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

Nejlepší postupy

Ukládejte URL adresy do proměnných

Při překladu řetězců obsahujících URL nebo podobná data je dobrým zvykem umístit tyto URL do proměnných a poté na ně odkazovat ve svých šablonách.

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

Použijte ARIA popisky

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é uživatelům umožňuje zkopírovat text z bloku kódu, můžete použít atribut aria-label k jasnému popisu:

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

Na tom je něco opravdu meta.

Globální pole originů a více originů pro komponenty

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á zmenšit velikost balíčků a dobu přenosu, čímž zajišťuje efektivní a škálovatelnou lokalizaci.

Zatímco je to přímočaré při renderování pouze na straně klienta, správa originů se při získávání překladů pro renderování na straně serveru rychle stává složitou. Můžete však automatizovat správu originů pomocí pole klienta TacoTranslate origins.

Zvažte tento příklad, kde jsme oddě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 renderování na straně serveru pro více informací o getTacoTranslateStaticProps.

Zpracování chyb a ladění

Produkt od NattskiftetVyrobeno v Norsku