TacoTranslate
/
DokimantasyonPri
 
  1. Entwodiksyon
  2. Kòmanse
  3. Enstalasyon ak konfigirasyon
  4. Sèvi ak TacoTranslate
  5. Afichaj sou sèvè
  6. Itilizasyon avanse
  7. Pi bon pratik
  8. Jesyon erè ak debogaj
  9. Lang ki sipòte

Itilizasyon avanse

Jere lang ki ekri adwat a goch

TacoTranslate fè li fasil pou sipòte lang ki li depi adwat pou agoch (RTL), tankou Arab ak Ebre, nan aplikasyon React ou yo. Bon jan manyen lang RTL asire kontni ou parèt kòrèkteman pou itilizatè ki li soti adwat ale agoch.

import {useTacoTranslate} from 'tacotranslate/react';

function Document() {
	const {locale, isRightToLeft} = useTacoTranslate();

	return (
		<html lang={locale} dir={isRightToLeft ? 'rtl' : 'ltr'}>
			<body>
				// ...
			</body>
		</html>
	);
}

Ou ka tou itilize fonksyon isRightToLeftLocaleCode ki disponib la pou tcheke lang aktyèl la deyò React.

import {isRightToLeftLocaleCode} from 'tacotranslate';

function foo(locale = 'es') {
	const direction = isRightToLeftLocaleCode(locale) ? 'rtl' : 'ltr';
	// ...
}

Dezaktive tradiksyon

Pou enfim tradiksyon pou pati espesifik nan yon chèn oswa pou asire sèten segman rete jan yo ye, ou ka itilize twa parantèz kare. Karakteristik sa a itil pou kenbe fòma orijinal non yo, tèm teknik, oswa nenpòt lòt kontni ki pa ta dwe tradui.

import {Translate} from 'tacotranslate/react';

function Component() {
	return (
		<Translate string="Hello, [[[TacoTranslate]]]!" />
	);
}

Nan egzanp sa a, mo “TacoTranslate” pral rete san chanje nan tradiksyon an.

Plizyè founisè TacoTranslate

Nou ankouraje anpil pou w itilize plizyè TacoTranslate founisè nan aplikasyon w lan. Sa itil pou òganize tradiksyon yo ak tèks yo nan orijin diferan, tankou tèt paj la, pye paj la, oswa seksyon espesifik.

Ou ka li plis sou kijan pou itilize orijin yo isit la.

TacoTranslate founisè yo erite anviwònman ki soti nan nenpòt founisè paran, konsa ou p ap bezwen repete okenn lòt anviwònman.

import createTacoTranslateClient from 'tacotranslate';
import {TacoTranslate} from 'tacotranslate/react';

const tacoTranslateClient = createTacoTranslateClient({apiKey: 'YOUR_API_KEY'});

function Header() {
	return (
		<TacoTranslate origin="header">
			// ...
		</TacoTranslate>
	);
}

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

export default function App() {
	return (
		<TacoTranslate client={tacoTranslateClient} origin="page" locale="es">
			<Header />
			<Menu />
		</TacoTranslate>
	);
}

Ranplase orijin oswa lokal

Anplis de itilize plizyè TacoTranslate founisè, ou kapab tou ranplase tou de origin ak locale sou nivo konpozan Translate ak nivo hook useTranslation.

import {Translate, useTranslation} from 'tacotranslate/react';

function Greeting() {
	const spanishHello = useTranslation('Hello!', {locale: 'es'});

	return (
		<>
			{spanishHello}
			<Translate string="What’s up?" origin="greeting" />
		</>
	);
}

Jere chajman

Lè w ap chanje lang sou bò kliyan an, telechaje tradiksyon yo ka pran kèk moman, depann sou koneksyon itilizatè a. Ou ka montre yon endikatè chajman pou amelyore eksperyans itilizatè a lè w bay fidbak vizyèl pandan chanjman lang lan.

import {useTacoTranslate} from 'tacotranslate/react';

function Component() {
	const {isLoading} = useTacoTranslate();

	return (
		isLoading ? 'Translations are loading...' : null
	);
}

Pliryèlizasyon

Pou byen jere pluralizasyon ak afiche etikèt ki baze sou kantite kòrèkteman nan diferan lang, sa konsidere kòm pi bon pratik:

import {Translate, useLocale} from 'tacotranslate/react';

function PhotoCount() {
	const locale = useLocale();
	const count = 1;

	return count === 0 ? (
		<Translate string="You have no photos." />
	) : count === 1 ? (
		<Translate string="You have 1 photo." />
	) : (
		<Translate
			string="You have {{count}} photos."
			variables={{count: count.toLocaleString(locale)}}
		/>
	);
}

Plizyè lang

Pou sipòte plizyè lang an menm tan nan menm aplikasyon an, ou ka sèvi ak plizyè founisè TacoTranslate ak valè locale diferan jan montre anba a:

Ou kapab tou ranplase locale nan nivo konpozan oswa hook la.

import createTacoTranslateClient from 'tacotranslate';
import {TacoTranslate, Translate} from 'tacotranslate/react';

const tacoTranslateClient = createTacoTranslateClient({apiKey: 'YOUR_API_KEY'});

function Spanish() {
	return (
		<TacoTranslate locale="es">
			<Translate string="Hello, world in Spanish!" />
		</TacoTranslate>
	);
}

function Norwegian() {
	return (
		<TacoTranslate locale="no">
			<Translate string="Hello, world in Norwegian!" />
		</TacoTranslate>
	);
}

export default function App() {
	return (
		<TacoTranslate client={tacoTranslateClient} origin="page" locale="es">
			<Spanish />
			<Norwegian />
		</TacoTranslate>
	);
}

Sèvi ak ID tradiksyon

Ou ka ajoute yon id nan konpozan Translate pou jere diferan tradiksyon oswa siyifikasyon pou menm tèks la. Sa a espesyalman itil lè menm tèks la bezwen diferan tradiksyon selon kontèks la. Lè ou bay ID inik, ou asire ke chak egzanp tèks la tradui avèk presizyon dapre siyifikasyon espesifik li.

import {Translate} from 'tacotranslate/react';

function Header() {
	return (
		<Translate id="header" string="Login" />
	);
}

function Footer() {
	return (
		<Translate id="footer" string="Login" />
	);
}

Pa egzanp, login nan header la ta ka tradui kòm “Iniciar sesión”, epi login nan footer la ta ka tradui kòm “Acceder” an Panyòl.

Pi bon pratik

Yon pwodwi ki soti nan NattskiftetFèt nan Nòvèj