TacoTranslate
/
DokumentationPreise
 
  1. Einführung
  2. Erste Schritte
  3. Einrichtung und Konfiguration
  4. Verwendung von TacoTranslate
  5. Serverseitiges Rendering
  6. Erweiterte Nutzung
  7. Beste Praktiken
  8. Fehlerbehandlung und Debugging
  9. Unterstützte Sprachen

Beste Praktiken

Setze URLs in Variablen

Beim Übersetzen von Zeichenketten, die URLs oder ähnliche Daten enthalten, gilt es als gute Praxis, diese URLs in Variablen zu speichern und dann innerhalb Ihrer Vorlagen darauf zu verweisen.

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

ARIA-Labels verwenden

Beim Übersetzen des Textes von interaktiven Elementen wie Schaltflächen ist es wichtig, ARIA-Labels einzufügen, um die Barrierefreiheit sicherzustellen. ARIA-Labels helfen Screenreadern dabei, beschreibende Informationen über die Funktion des Elements bereitzustellen.

Beispielsweise können Sie bei einer Schaltfläche, die es Nutzern ermöglicht, Text aus einem Codeblock zu kopieren, das aria-label Attribut verwenden, um eine klare Beschreibung anzugeben:

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

Irgendetwas daran fühlt sich sehr meta an.

Globale Origins-Array und mehrere Component-Origins

Dieses Muster funktioniert nur bei Verwendung des Next.js Pages Router.

Bei der Arbeit mit größeren Anwendungen ist es vorteilhaft, Zeichenketten und Übersetzungen in mehrere, kleinere Origins aufzuteilen. Dieser Ansatz hilft, die Bundle-Größen und Übertragungszeiten zu reduzieren und sorgt für eine effiziente und skalierbare Lokalisierung.

Während dies beim Nur-Client-seitigen Rendering straightforward ist, wird die Verwaltung der Origins schnell komplex, wenn Übersetzungen für das serverseitige Rendering abgerufen werden. Sie können die Origin-Verwaltung jedoch automatisieren, indem Sie das origins Array des TacoTranslate Clients nutzen.

Betrachten Sie dieses Beispiel, bei dem wir unsere Komponenten und Seiten in separate Dateien aufgeteilt haben.

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

Sehen Sie sich unsere Beispiele für serverseitiges Rendering für weitere Informationen zu getTacoTranslateStaticProps an.

Fehlerbehandlung und Debugging

Ein Produkt von NattskiftetHergestellt in Norwegen