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árom módja van a karakterláncok lefordí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!" />;
}

A komponensen például a as="p" beállítással megváltoztathatod az elem típusát.


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

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.
Szövegek lefordítása a szerveroldalon. Turbózd fel a 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 történik a szövegek fordítása

Amikor a szövegek elérnek a szervereinkre, 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, mint az AI-fordításaink, gyors kezdeti választ nyújtanak.

Ugyanakkor elindítunk egy aszinkron fordítási feladatot, hogy magas színvonalú, csúcstechnológiás AI-fordítást készítsünk a szöveghez. Amint az AI-fordítás elkészül, az felváltja a gépi fordítást, és elküldjük, amikor csak fordításokat kérsz a szövegeidhez.

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

Originok használata

A TacoTranslate-projektek tartalmazzák azokat, amelyeket origins-nek nevezünk. Gondolj rájuk úgy, mint a szövegeid és azok fordításai számára szolgáló bejárati pontokra, mappákra vagy csoportokra.

import {TacoTranslate} from 'tacotranslate/react';

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

Az eredetek lehetővé teszik, hogy a karakterláncokat értelmes tárolókba rendezd. Például lehet egy eredet 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 több TacoTranslate szolgáltatót használjon a projektjében.

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, hogyan osztod fel a stringeket originokba, rajtad és az igényeiden múlik. Ugyanakkor vedd figyelembe, hogy ha egy originben sok string van, az megnövelheti a betöltési időt.

Változók kezelése

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

A karakterláncokban szereplő változókat dupla kapcsos zárójelek között kell megadni, 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. Ha azonban ki szeretnéd kapcsolni ezt a viselkedést, állítsd a useDangerouslySetInnerHTML értékét false-ra.

Erősen ajánlott letiltani a HTML megjelenítését, amikor nem megbízható tartalmat, például felhasználók által létrehozott tartalmat fordítasz.

Minden kimenetet mindig a sanitize-html segítségével tisztítunk meg, mielőtt megjelenítésre kerül.

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 sima szövegként lesz megjelenítve.

Szerveroldali renderelés

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