TacoTranslate
/
DokumentáciaCenník
 
  1. Úvod
  2. Začíname
  3. Nastavenie a konfigurácia
  4. Používanie TacoTranslate
  5. Renderovanie na strane servera
  6. Pokročilé použitie
  7. Najlepšie postupy
  8. Riešenie chýb a ladenie
  9. Podporované jazyky

Najlepšie postupy

Ukladajte URL do premenných

Pri prekladaní reťazcov, ktoré obsahujú URL alebo podobné údaje, sa za dobrú prax považuje uložiť tieto URL do premenných a potom na ne vo svojich šablónach odkazovať.

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

Použitie ARIA štítkov

Pri prekladaní textu interaktívnych prvkov, ako sú tlačidlá, je dôležité zahrnúť ARIA popisky, aby bola zabezpečená prístupnosť. ARIA popisky pomáhajú čítačkám obrazovky poskytovať popisné informácie o funkcii prvku.

Napríklad, ak máte tlačidlo, ktoré umožňuje používateľom skopírovať text z bloku kódu, môžete použiť atribút aria-label na poskytnutie jasného popisu:

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

Niečo na tom pôsobí veľmi meta.

Globálne pole pôvodov a viaceré pôvody komponentov

Tento vzor funguje len pri použití Next.js Pages Router.

Pri práci s väčšími aplikáciami je výhodné rozdeliť reťazce a preklady do viacerých menších pôvodov. Tento prístup pomáha zmenšiť veľkosť balíkov a časy prenosu, čím zabezpečuje efektívnu a škálovateľnú lokalizáciu.

Zatiaľ čo je to jednoduché pri vykresľovaní iba na strane klienta, správa pôvodov sa pri získavaní prekladov pre vykresľovanie na strane servera rýchlo stáva zložitou. Môžete však automatizovať správu pôvodov využitím poľa klienta TacoTranslate origins.

Pozrite si tento príklad, kde sme komponenty a stránky rozdelili do samostatných súborov.

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

Pozrite si naše príklady vykresľovania na strane servera pre viac informácií o getTacoTranslateStaticProps.

Riešenie chýb a ladenie

Produkt od NattskiftetVyrobené v Nórsku