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

Itilizasyon avanse

Jere lang ki ekri de dwat a goch

TacoTranslate fè li fasil pou sipòte lang ki soti adwat pou agoch (RTL), tankou Arab ak Ebre, nan aplikasyon React ou yo. Bon jesyon lang RTL asire ke kontni ou parèt kòrèkteman pou itilizatè ki li soti adwat pou 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 dezaktive tradiksyon pou pati espesifik nan yon chèn tèks oswa pou asire kèk segman rete menm jan an, ou ka itilize twa parantèz kare. Karakteristik sa a itil pou kenbe fòma orijinal non yo, tèm teknik yo, 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” la p ap chanje nan tradiksyon an.

Plizyè founisè TacoTranslate

Nou ankouraje w fò pou w itilize plizyè TacoTranslate founisè nan aplikasyon w lan. Sa itil pou òganize tradiksyon ou yo ak chenn karaktè yo nan diferan orijin, tankou tèt paj la (header), pye paj la (footer), 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, kidonk 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 toude orijin ak lokal 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 chanje lang sou bò kliyan an, li ka pran kèk moman pou chaje tradiksyon yo selon koneksyon itilizatè a. Ou ka montre yon endikatè chajman pou amelyore eksperyans itilizatè a pa bay fidbak vizyèl pandan chanjman an.

import {useTacoTranslate} from 'tacotranslate/react';

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

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

Pliryèlizasyon

Pou jere pliryèl yo epi montre etikèt ki baze sou kantite yo 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 itilize plizyè founisè TacoTranslate ak diferan locale valè jan sa montre anba a:

Ou ka tou ranplase locale sou nivo konpozan oswa hook.

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 itil patikilyèman lè menm tèks la bezwen diferan tradiksyon selon kontèks la. Lè w bay ID inik, w asire chak egzemplè tèks la jwenn tradiksyon kòrèk selon 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 tèt la ta ka tradui kòm “Iniciar sesión”, epi login nan pye paj la ta ka tradui kòm “Acceder” an panyòl.

Pi bon pratik

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