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. Jere erè ak debogaj
  9. Lang ki sipòte

Itilizasyon avanse

Jere lang ki ekri soti adwat pou ale agoch

TacoTranslate fè li fasil pou sipòte lang ki ekri soti adwat ale agoch (RTL), tankou Arab ak Ebre, nan aplikasyon React ou yo. Lè w jere lang RTL kòrèkteman, sa asire kontni ou afiche jan li dwe 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 kapab tou sèvi ak 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 tèks oswa pou asire sèten segman rete menm jan an, ou ka itilize twa parantèz kare. Karakteristik sa a itil pou kenbe fòma orijinal non, tèm teknik, oswa nenpòt lòt kontni ki pa 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 fò pou w itilize plizyè TacoTranslate founisè nan aplikasyon ou an. Sa itil pou òganize tradiksyon ou yo ak strings yo nan diferan orijin, tankou tèt paj la, pye paj la, oswa seksyon espesifik.

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

Founisè TacoTranslate yo eritye anviwònman ki sòti nan nenpòt founisè paran, kidonk ou pap 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 fournisseurs, ou ka tou chanje tou de origin ak lokal sou konpozan Translate ak nivo kwòk 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, rekipere tradiksyon yo ka pran kèk moman selon koneksyon itilizatè a. Ou ka montre yon endikatè chajman pou amelyore eksperyans itilizatè a lè w bay yon endikasyon vizyèl pandan chanjman an.

import {useTacoTranslate} from 'tacotranslate/react';

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

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

Pliralizasyon

Pou trete pliryèl yo epi afiche etikèt ki depann 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 sa montre pi ba a:

Ou ka tou ranplase locale sou 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 sans pou menm chenn tèks la. Sa patikilyèman itil lè menm tèks la bezwen diferan tradiksyon selon kontèks la. Lè ou asiyen ID inik, ou asire chak aparisyon tèks la tradui avèk presizyon dapre sans 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, koneksyon nan tèt paj la ta ka tradui kòm “Iniciar sesión”, epi koneksyon nan pye paj la ta ka tradui kòm “Acceder” an panyòl.

Pi bon pratik

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