TacoTranslate
/
DocumentacióPreus
 
  1. Introducció
  2. Començar
  3. Instal·lació i configuració
  4. Ús de TacoTranslate
  5. Renderització al servidor
  6. Ús avançat
  7. Millors pràctiques
  8. Gestió d'errors i depuració
  9. Idiomes compatibles

Millors pràctiques

Posa les URL en variables

Quan es tradueixen cadenes que contenen URL o dades similars, és una bona pràctica col·locar aquestes URL dins de variables i, a continuació, fer-ne referència dins de les plantilles.

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

Utilitzar etiquetes ARIA

Quan tradueixis el text d’elements interactius com ara botons, és important incloure etiquetes ARIA per garantir l’accessibilitat. Les etiquetes ARIA ajuden els lectors de pantalla a proporcionar informació descriptiva sobre la funció de l’element.

Per exemple, si tens un botó que permet als usuaris copiar text d’un bloc de codi, pots utilitzar l’atribut aria-label per proporcionar una descripció clara:

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

Hi ha alguna cosa en això que em sembla molt meta.

Matriu global d'orígens i diversos orígens per component

Aquest patró només funciona quan s'utilitza el Next.js Pages Router.

Quan es treballa amb aplicacions més grans, és recomanable dividir les cadenes i les traduccions en diversos orígens més petits. Aquesta estratègia ajuda a reduir la mida dels paquets i els temps de transferència, garantint una localització eficient i escalable.

Tot i que això és senzill quan es renderitza només al costat del client, la gestió d'orígens esdevé ràpidament complexa quan s'obtenen les traduccions per al renderitzat al costat del servidor. No obstant això, pots automatitzar la gestió d'orígens utilitzant l'array TacoTranslate client origins.

Considera aquest exemple, en què hem separat els nostres components i pàgines en fitxers separats.

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

Consulteu els nostres exemples de renderització del costat del servidor per obtenir més informació sobre getTacoTranslateStaticProps.

Gestió d'errors i depuració

Un producte de NattskiftetFet a Noruega