TacoTranslate
/
DocumentațiePrețuri
 
  1. Introducere
  2. Începutul folosirii
  3. Configurare și configurare
  4. Utilizarea TacoTranslate
  5. Randare pe partea de server
  6. Utilizare avansată
  7. Cele mai bune practici
  8. Gestionarea erorilor și depanarea
  9. Limbi suportate

Cele mai bune practici

Pune URL-urile în variabile

Când traduceți șiruri care conțin URL-uri sau date similare, este considerată o bună practică să plasați aceste URL-uri în variabile și apoi să le referiți în cadrul șabloanelor dvs.

<Translate
	string={`Click <a href="{{url}}">here</a>`}
	variables={{url: 'https://tacotranslate.com'}}
/>

Utilizați etichete ARIA

Atunci când traduceți textul elementelor interactive precum butoanele, este important să includeți etichete ARIA pentru a asigura accesibilitatea. Etichetele ARIA ajută cititoarele de ecran să ofere informații descriptive despre funcția elementului.

De exemplu, dacă aveți un buton care permite utilizatorilor să copieze text dintr-un bloc de cod, puteți folosi atributul aria-label pentru a oferi o descriere clară:

<Translate
	aria-label={useTranslation('Copy to clipboard')}
	string="Copy"
/>

Ceva în legătură cu asta pare foarte meta.

Array global de origini și multiple origini ale componentelor

Acest tipar funcționează doar atunci când se utilizează Next.js Pages Router.

Când lucrați cu aplicații mai mari, este benefic să împărțiți șirurile și traducerile în mai multe origini mai mici. Această abordare ajută la reducerea dimensiunilor pachetelor și a timpilor de transfer, asigurând o localizare eficientă și scalabilă.

Deși acest lucru este simplu atunci când se realizează randarea doar pe partea clientului, gestionarea originilor devine rapid complexă atunci când se preiau traduceri pentru randarea pe server. Totuși, puteți automatiza gestionarea originilor utilizând array-ul origins al clientului TacoTranslate.

Luați în considerare acest exemplu, unde am separat componentele și paginile în fișiere separate.

components/pricing-table.tsx
import TacoTranslate, {Translate} from 'tacotranslate/react';
import tacoTranslate from '../tacotranslate-client';

// Set an origin name for this component
const origin = 'components/pricing-table';

// Push the origin into the origins array as this file is imported
tacoTranslate.origins.push(origin);

export default function PricingTable() {
	return (
		<TacoTranslate origin={origin}>
			<Translate string="Pricing table" />
			// ...
		</TacoTranslate>
	);
}
pages/pricing.tsx
import TacoTranslate, {Translate} from 'tacotranslate/react';
import getTacoTranslateStaticProps from 'tacotranslate/next/get-static-props';
import tacoTranslateClient from '../tacotranslate-client';
import PricingTable from '../components/pricing-table';

const origin = 'pages/pricing';
tacoTranslateClient.origins.push(origin);

export default function PricingPage() {
	return (
		<TacoTranslate origin={origin}>
			<Translate string="Pricing page" />
			<PricingTable />
		</TacoTranslate>
	);
}

// We will now fetch translations for all imported components and their origins automatically
export async function getStaticProps(context) {
	return getTacoTranslateStaticProps(context, {client: tacoTranslateClient});
}

Consultați exemplele noastre de randare pe partea serverului pentru mai multe informații despre getTacoTranslateStaticProps.

Gestionarea erorilor și depanarea

Un produs de la Nattskiftet