TacoTranslate
/
DocumentațiePrețuri
 
  1. Introducere
  2. Începeți
  3. Instalare și configurare
  4. Utilizarea TacoTranslate
  5. Randare pe server
  6. Utilizare avansată
  7. Cele mai bune practici
  8. Gestionarea erorilor și depanare
  9. Limbi acceptate

Utilizare avansată

Gestionarea limbilor scrise de la dreapta la stânga

TacoTranslate facilitează suportul pentru limbile scrise de la dreapta la stânga (RTL), cum ar fi araba și ebraica, în aplicațiile dvs. React. Tratarea corectă a limbilor RTL asigură că conținutul dvs. este afișat corect pentru utilizatorii care citesc de la dreapta la stânga.

import {useTacoTranslate} from 'tacotranslate/react';

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

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

De asemenea, puteți folosi funcția furnizată isRightToLeftLocaleCode pentru a verifica limba curentă în afara React.

import {isRightToLeftLocaleCode} from 'tacotranslate';

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

Dezactivarea traducerii

Pentru a dezactiva traducerea unor părți ale unui șir de caractere sau pentru a vă asigura că anumite segmente sunt păstrate neschimbate, puteți folosi paranteze pătrate triple. Această caracteristică este utilă pentru menținerea formatului original al numelor, termenilor tehnici sau al oricărui alt conținut care nu ar trebui tradus.

import {Translate} from 'tacotranslate/react';

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

În acest exemplu, cuvântul “TacoTranslate” va rămâne neschimbat în traducere.

Mai mulți furnizori TacoTranslate

Vă încurajăm cu tărie să utilizați mai mulți furnizori TacoTranslate în aplicația dvs. Acest lucru este util pentru organizarea traducerilor și a șirurilor de text în origini diferite, cum ar fi antetul, subsolul sau anumite secțiuni.

Puteți afla mai multe despre utilizarea originilor aici.

Furnizorii TacoTranslate moștenesc setările de la orice furnizor părinte, astfel încât nu va trebui să repeți alte setări.

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>
	);
}

Suprascrierea originii sau localei

Pe lângă utilizarea mai multor furnizori TacoTranslate, puteți suprascrie și originul și localizarea la nivelul componentelor Translate și al hook-ului useTranslation.

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

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

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

Gestionarea încărcării

Când schimbați limba la nivelul clientului, preluarea traducerilor poate dura câteva momente, în funcție de conexiunea utilizatorului. Puteți afișa un indicator de încărcare pentru a îmbunătăți experiența utilizatorului, oferind feedback vizual în timpul comutării.

import {useTacoTranslate} from 'tacotranslate/react';

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

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

Pluralizare

Pentru a gestiona pluralizarea și a afișa corect etichetele bazate pe număr în diferite limbi, aceasta este considerată cea mai bună practică:

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)}}
		/>
	);
}

Mai multe limbi

Pentru a oferi suport pentru mai multe limbi simultan în aceeași aplicație, puteți utiliza mai mulți furnizori TacoTranslate cu valori locale diferite, după cum se arată mai jos:

De asemenea, puteți suprascrie locale la nivelul componentului sau al hook-ului.

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>
	);
}

Folosirea ID-urilor de traducere

Puteți adăuga un id la componenta Translate pentru a gestiona traduceri sau înțelesuri diferite pentru același șir. Acest lucru este deosebit de util atunci când același text necesită traduceri diferite în funcție de context. Prin atribuirea de ID-uri unice, vă asigurați că fiecare instanță a șirului este tradusă corect conform înțelesului său specific.

import {Translate} from 'tacotranslate/react';

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

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

De exemplu, login-ul din antet s-ar putea traduce prin “Iniciar sesión”, iar login-ul din subsol s-ar putea traduce prin “Acceder” în spaniolă.

Cele mai bune practici

Un produs de la NattskiftetFabricat în Norvegia