TacoTranslate
/
DokumentacijaCene
 
  1. Uvod
  2. Početak rada
  3. Podešavanje i konfiguracija
  4. Korišćenje TacoTranslate
  5. Renderovanje na serverskoj strani
  6. Napredna upotreba
  7. Najbolje prakse
  8. Rukovanje greškama i otklanjanje grešaka
  9. Podržani jezici

Korišćenje TacoTranslate

Prevođenje nizova

Trenutno postoje tri načina za prevođenje stringova: komponenta Translate, useTranslation hook, ili translateEntries utilitarni alat.


Korišćenje Translate komponentе.
Prikazuje prevode unutar span elementa i podržava prikazivanje HTML-a.

import {Translate} from 'tacotranslate/react';

function Page() {
	return <Translate string="Hello, world!" />;
}

Možete promeniti tip elementa koristeći, na primer, as="p" na komponenti.


Korišćenje useTranslation hook-a.
Vraća prevode kao običan tekst. Korisno, na primer, u meta tagovima.

import {useEffect} from 'react';
import {useTranslation} from 'tacotranslate/react';

function Page() {
	const helloWorld = useTranslation('Hello, world!');

	useEffect(() => {
		alert(helloWorld);
	}, [helloWorld]);

	return (
		<title>{useTranslation('My page title')}</title>
	);
}

Korišćenje translateEntries alata.
Prevedite stringove na strani servera. Pojačajte vaše OpenGraph slike.

import {createEntry, translateEntries} from 'tacotranslate';

async function generateMetadata(locale = 'es') {
	const title = createEntry({string: 'Hello, world!'});
	const description = createEntry({string: 'TacoTranslate on the server'});

	const translations = await translateEntries(
		tacoTranslate,
		{origin: 'opengraph', locale},
		[title, description]
	);

	return {
		title: translations(title),
		description: translations(description)
	};
}

Kako se prevode stringovi

Kada stringovi stignu na naše servere, prvo ih validiramo i sačuvamo, a zatim odmah vraćamo mašinski prevod. Iako su mašinski prevodi generalno nižeg kvaliteta u poređenju sa našim AI prevodima, oni pružaju brz početni odgovor.

Istovremeno, pokrećemo asinhroni prevodilački zadatak kako bismo generisali visokokvalitetan, najsavremeniji AI prevod za vaš string. Kada AI prevod bude spreman, zameniće mašinski prevod i biće poslat svaki put kada zahtevate prevode za vaše stringove.

Ако сте ручно превели низ, ти преводи имају предност и враћају се уместо тога.

Korišćenje izvora

TacoTranslate projekti sadrže ono što mi zovemo origins. Zamislite ih kao ulazne tačke, foldere ili grupe za vaše stringove i prevode.

import {TacoTranslate} from 'tacotranslate/react';

function Menu() {
	return (
		<TacoTranslate origin="application-menu">
			// ...
		</TacoTranslate>
	);
}

Origins vam omogućavaju da razdvojite stringove u smislenije kontejnere. Na primer, možete imati jedan origin za dokumentaciju, a drugi za vašu marketinšku stranicu.

Za detaljniju kontrolu, možete podesiti origines na nivou komponenti.

Da biste to postigli, razmislite o korišćenju više TacoTranslate provajdera unutar vašeg projekta.

Imajte na umu da ista fraza može imati različite prevode u različitim izvorima.

Na kraju, kako ćete podeliti stringove u origin-e zavisi od vas i vaših potreba. Međutim, imajte na umu da veliki broj stringova unutar jednog origin-a može povećati vreme učitavanja.

Rukovanje promenljivama

Uvek bi trebalo da koristite promenljive za dinamički sadržaj, kao što su korisnička imena, datumi, e-mail adrese i slično.

Promenljive u nizovima se deklarišu pomoću dvostrukih zagrada, kao što je {{variable}}.

import {Translate} from 'tacotranslate/react';

function Greeting() {
	const name = 'Juan';
	return <Translate string="Hello, {{name}}!" variables={{name}} />;
}
import {useTranslation} from 'tacotranslate/react';

function useGreeting() {
	const name = 'Juan';
	return useTranslation('Hello, {{name}}!', {variables: {name}});
}

Upravljanje HTML sadržajem

Po defaultu, Translate komponenta podržava i prikazuje HTML sadržaj. Međutim, možete isključiti ovo ponašanje tako što ćete postaviti vrednost useDangerouslySetInnerHTML na false.

Isključivanje prikaza HTML-a se toplo preporučuje prilikom prevođenja nepouzdanog sadržaja, kao što je sadržaj koji generišu korisnici.

Sav izlaz se uvek sanitizuje pomoću sanitize-html pre prikaza.

import {Translate} from 'tacotranslate/react';

function Page() {
	return (
		<Translate
			string={`
				Welcome to <strong>my</strong> website.
				I’m using <a href="{{url}}">TacoTranslate</a> to translate text.
			`}
			variables={{url: 'https://tacotranslate.com'}}
			useDangerouslySetInnerHTML={false}
		/>
	);
}

Gore navedeni primer biće prikazan kao običan tekst.

Renderovanje na serverskoj strani

Proizvod kompanije Nattskiftet