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

Szövegek fordítása

Jelenleg három módja van a stringek fordításának: a Translate komponens, a useTranslation hook, vagy a translateEntries segédprogram.


A Translate komponens használata.
A fordításokat egy span elemben jeleníti meg, é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 módosíthatod.


A useTranslation hook használata.
Visszaadja a fordításokat egyszerű sztringként. Hasznos például 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ítsd le a karakterláncokat a szerveroldalon. Emeld új szintre az OpenGraph képeidet.

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 fordítódnak a karakterláncok

Amikor a szövegek elérik a szervereinket, először érvényesítjük és elmentjük őket, majd azonnal visszaküldünk egy gépi fordítást. Bár a gépi fordítások általában alacsonyabb minőségűek, mint a mesterséges intelligencián alapuló fordításaink, gyors kezdeti választ biztosítanak.

Egyidejűleg elindítunk egy aszinkron fordítási feladatot, hogy a fordítandó szöveghez egy magas színvonalú, korszerű AI-fordítást generáljunk. Amint az AI-fordítás elkészül, felváltja a gépi fordítást, és megküldjük, amikor csak fordításokat kérsz a szövegeidhez.

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

Eredetek használata

A TacoTranslate projektek tartalmaznak olyasmit, amit origins-nak nevezünk. Gondolj rájuk belépési pontokként, mappákként vagy csoportokként a stringjeid és fordításaid számára.

import {TacoTranslate} from 'tacotranslate/react';

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

Az Origins lehetővé teszi, hogy a szövegeket értelmes tárolókba rendezd. Például lehet egy origin a dokumentációhoz és egy másik a marketingoldaladhoz.

Részletesebb vezérlés érdekében komponens szinten hozhat létre origins-okat.

Ennek eléréséhez fontolja meg, hogy projektjén belül 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 az, hogy hogyan osztod fel a szövegeket originokba, rajtad és az igényeiden múlik. Azonban vedd figyelembe, hogy ha egy originon belül sok szöveg található, az megnövelheti a betöltési időt.

Változók kezelése

Dinamikus tartalomhoz mindig használj változókat, például felhasználónevek, dátumok, e-mail címek és egyéb adatok esetén.

A változókat a stringekben dupla kapcsos zárójelek használatával 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 ezt a viselkedést kikapcsolhatja úgy, hogy a useDangerouslySetInnerHTML értékét false-ra állítja.

HTML-megjelenítés letiltása erősen ajánlott, amikor megbízhatatlan tartalmakat, például felhasználók által létrehozott tartalmat fordítunk.

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

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 NattskiftettőlKészült Norvégiában