TacoTranslate
/
DokumentációÁrazás
 
  1. Bevezetés
  2. Első lépések
  3. Beállítás és konfiguráció
  4. A TacoTranslate használata
  5. Szerveroldali renderelés
  6. Fejlett használat
  7. Legjobb gyakorlatok
  8. Hibakezelés és hibakeresés
  9. Támogatott nyelvek

Legjobb gyakorlatok

URL-ek elhelyezése változókban

Amikor URL-eket vagy hasonló adatokat tartalmazó karakterláncokat fordítunk, jó gyakorlatnak számít, hogy ezeket az URL-eket változókba helyezzük, majd ezeket a változókat hivatkozzuk meg a sablonokban.

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

ARIA címkék használata

Interaktív elemek, például gombok szövegének fordításakor fontos, hogy tartalmazzanak ARIA címkéket az akadálymentesség biztosítása érdekében. Az ARIA címkék segítik a képernyőolvasókat abban, hogy leíró információkat nyújtsanak az elem funkciójáról.

Például, ha van egy gomb, amely lehetővé teszi a felhasználók számára, hogy szöveget másoljanak egy kódrészletből, használhatja a aria-label attribútumot, hogy egyértelmű leírást adjon:

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

Valami ebben nagyon meta érzést kelt.

Globális eredetek tömbje és több komponens eredete

Ez a minta csak akkor működik, ha a Next.js Pages Router-t használod.

Nagyobb alkalmazások esetén előnyös a szövegeket és fordításokat több, kisebb eredetforrásra bontani. Ez a megközelítés segít csökkenteni a csomagméreteket és az átvitel idejét, biztosítva a hatékony és skálázható lokalizációt.

Míg ez egyszerű, ha csak kliens oldalon történik a renderelés, az eredetforrások kezelése gyorsan bonyolulttá válik, amikor a szerver oldali rendereléshez kell lekérni a fordításokat. Azonban az eredetforrások kezelését automatizálhatod a TacoTranslate kliens origins tömb használatával.

Vegyük például ezt az esetet, ahol a komponenseinket és az oldalainkat külön fájlokba választottuk szét.

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

Tekintse meg a szerveroldali renderelés példáit további információkért a getTacoTranslateStaticProps használatáról.

Hibakezelés és hibakeresés

Egy termék a Nattskiftet-tőlNorvégiában készült