TacoTranslate
/
DokumentaceCeny
 
  1. Úvod
  2. Začínáme
  3. Nastavení a konfigurace
  4. Používání TacoTranslate
  5. Serverové vykreslování
  6. Pokročilé použití
  7. Nejlepší postupy
  8. Zpracování chyb a ladění
  9. Podporované jazyky

Nejlepší postupy

Ukládejte URL do proměnných

Při překládání řetězců, které obsahují URL nebo podobná data, je považováno za dobrou praxi umístit tyto URL do proměnných a poté na ně odkazovat ve vašich šablonách.

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

Použijte ARIA štítky

Při překladu textu interaktivních prvků jako jsou tlačítka je důležité zahrnout ARIA popisky, aby byla zajištěna přístupnost. ARIA popisky pomáhají čtečkám obrazovky poskytovat popisné informace o funkci prvku.

Například, pokud máte tlačítko, které umožňuje uživatelům kopírovat text z bloku kódu, můžete použít atribut aria-label pro poskytnutí jasného popisu:

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

Na tom něco působí velmi meta.

Globální pole původů a více původů komponent

Tento vzor funguje pouze při použití Next.js Pages Router.

Při práci s většími aplikacemi je výhodné rozdělit řetězce a překlady do více menších originů. Tento přístup pomáhá snížit velikost balíčků a dobu přenosu, čímž zajišťuje efektivní a škálovatelnou lokalizaci.

Zatímco je to jednoduché při vykreslování pouze na straně klienta, správa originů se rychle stává složitou při načítání překladů pro server-side rendering. Nicméně můžete automatizovat správu originů využitím pole origins klienta TacoTranslate.

Zvažte tento příklad, kde jsme rozdělili naše komponenty a stránky do samostatných souborů.

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

Podívejte se na naše příklady server-side renderingu pro více informací o getTacoTranslateStaticProps.

Zpracování chyb a ladění

Produkt od Nattskiftet