TacoTranslate
/
DokumentációÁrazás
 
  1. Bevezetés
  2. Első lépések
  3. Beállítás és konfiguráció
  4. TacoTranslate használata
  5. Szerveroldali renderelés
  6. Haladó használat
  7. Legjobb gyakorlatok
  8. Hibakezelés és hibakeresés
  9. Támogatott nyelvek

TacoTranslate használata

Karakterláncok fordítása

Jelenleg háromféleképpen fordíthatók a karakterláncok: a Translate komponens, a useTranslation hook vagy a translateEntries segédprogram.


A Translate komponens használata.
Megjeleníti a fordításokat egy span elemen belül, és támogatja a HTML megjelenítését.

import {Translate} from 'tacotranslate/react';

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

Az elem típusát például a komponensen az as="p" használatával megváltoztathatod.


A useTranslation hook használata.
Visszaadja a fordításokat egyszerű szövegként. Hasznos például a meta címkékben.

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>
	);
}

A translateEntries segédprogram használata.
Fordítsa le a karakterláncokat a szerveroldalon. Turbózza fel az OpenGraph képeit.

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)
	};
}

Hogyan történik a szövegek fordítása

Amikor a fordítandó szövegek a szervereinkre érkeznek, először érvényesítjük és elmentjük őket, majd azonnal visszaadunk egy gépi fordítást. Bár a gépi fordítások általában alacsonyabb minőségűek a mesterséges intelligencia által készített fordításainknál, gyors kezdeti választ nyújtanak.

Ugyanakkor elindítunk egy aszinkron fordítási feladatot, amely egy magas színvonalú, csúcstechnológiás, mesterséges intelligencia-alapú fordítást készít a szövegedhez. Amint az MI-fordítás elkészül, felülírja a gépi fordítást, és elküldjük, amikor csak fordítást kérsz a szövegeidhez.

Ha manuálisan lefordítottál egy szöveget, azok a fordítások élveznek elsőbbséget, és azokat adjuk vissza.

Originok használata

A TacoTranslate-projektek tartalmaznak valamit, amit origins-nek hívunk. Tekintsd őket belépési pontoknak, mappáknak vagy a szövegeid és fordításaik csoportjaként.

import {TacoTranslate} from 'tacotranslate/react';

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

Az originok lehetővé teszik a szövegek értelmes tárolókba rendezését. Például lehet egy origin a dokumentációhoz és egy másik a marketingoldaladhoz.

Részletesebb vezérlés érdekében a komponens szintjén hozhatsz létre originokat.

Ennek eléréséhez fontolja meg, hogy a projektjében több TacoTranslate szolgáltatót használjon.

Kérjük, vegye figyelembe, hogy ugyanaz a szöveg különböző originokban eltérő fordítást kaphat.

Végső soron, hogy miként osztod szét a stringeket originokba, rajtad és az igényeiden múlik. Figyelembe kell azonban venni, hogy ha sok string van egy originben, az megnövelheti a betöltési időt.

Változók kezelése

Dinamikus tartalomhoz mindig használjon változókat, például felhasználóneveket, dátumokat, e-mail-címeket és egyebeket.

A változókat a karakterláncokban dupla kapcsos zárójelek között deklaráljuk, például {{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}});
}

HTML-tartalom kezelése

Alapértelmezés szerint a Translate komponens támogatja és megjeleníti a HTML-tartalmat. Azonban lemondhatsz erről a viselkedésről, ha a useDangerouslySetInnerHTML értékét false-ra állítod.

Ha nem megbízható tartalmakat, például felhasználók által létrehozott tartalmat fordítasz, erősen ajánlott letiltani az HTML-megjelenítést.

Minden kimenet megjelenítés előtt mindig a sanitize-html segítségével kerül megtisztításra.

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}
		/>
	);
}

A fenti példa egyszerű szövegként lesz megjelenítve.

Szerveroldali renderelés

Egy termék a Nattskiftet-tőlNorvégiában készült