TacoTranslate
/
DokumentacijaCijene
 
  1. Uvod
  2. Početak rada
  3. Postavljanje i konfiguracija
  4. Korištenje TacoTranslate
  5. Rendering sa serverske strane
  6. Napredna upotreba
  7. Najbolje prakse
  8. Rukovanje greškama i otklanjanje grešaka
  9. Podržani jezici

Korištenje TacoTranslate

Prevođenje nizova

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


Korištenje Translate komponente.
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 promijeniti tip elementa koristeći, na primjer, as="p" na komponenti.


Korištenje useTranslation hook-a.
Vraća prijevode kao običan tekst. Korisno, na primjer, u meta oznakama.

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štenje translateEntries alata.
Prevedite stringove na strani servera. Dajte dodatnu snagu vašim OpenGraph slikama.

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 nizovi

Kada nizovi stignu na naše servere, prvo ih validiramo i spremimo, zatim odmah vraćamo mašinski prevod. Iako su mašinski prevodi općenito nižeg kvaliteta u usporedbi s našim AI prevodima, oni pružaju brz početni odgovor.

Istovremeno, pokrećemo asinhroni prevodilački zadatak kako bismo generisali visokokvalitetan, najmoderniji AI prijevod za vaš string. Kada AI prijevod bude spreman, zamijeniće mašinski prijevod i biće poslan svaki put kada zatražite prijevode za svoje stringove.

Ako ste ručno preveli niz, ti prijevodi imaju prednost i vraćaju se umjesto toga.

Iskorištavanje izvora

TacoTranslate projekti sadrže ono što nazivamo 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 nizove u smislene kontejnere. Na primjer, možete imati jedan origin za dokumentaciju, a drugi za vašu marketinšku stranicu.

Za detaljniju kontrolu, možete podesiti origine na nivou komponente.

Da biste to postigli, razmotrite korištenje više TacoTranslate provajdera unutar vašeg projekta.

Molimo imajte na umu da ista stringa može dobiti različite prijevode u različitim originima.

Na kraju, način na koji razdvajate stringove u origini zavisi od vas i vaših potreba. Međutim, imajte na umu da veći broj stringova unutar jedne origine može povećati vrijeme učitavanja.

Rukovanje varijablama

Uvijek biste trebali koristiti varijable za dinamički sadržaj, poput korisničkih imena, datuma, e-mail adresa i slično.

Promjenjive u nizovima se deklariraju koristeći dvostruke uglaste zagrade, poput {{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 postavljanjem useDangerouslySetInnerHTML na false.

Onemogućavanje renderovanja HTML-a se toplo preporučuje prilikom prevođenja nepouzdanog sadržaja, poput sadržaja generisanog od strane korisnika.

Sav izlaz se uvijek sanitizira pomoću sanitize-html prije 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}
		/>
	);
}

Gornji primjer će biti prikazan kao običan tekst.

Rendering sa serverske strane

Proizvod od Nattskiftet