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

Verwendung von TacoTranslate

Zeichenketten übersetzen

Es gibt derzeit drei Möglichkeiten, Strings zu übersetzen: Die Translate Komponente, der useTranslation Hook oder das translateEntries Utility.


Verwendung der Translate Komponente.
Gibt Übersetzungen innerhalb eines span Elements aus und unterstützt das Rendern von HTML.

import {Translate} from 'tacotranslate/react';

function Page() {
	return <Translate string="Hello, world!" />;
}

Sie können den Elementtyp beispielsweise mit as="p" am Component ändern.


Verwendung des useTranslation Hooks.
Gibt Übersetzungen als einfachen Text zurück. Nützlich zum Beispiel in meta Tags.

import {useEffect} from 'react';
import {useTranslation} from 'tacotranslate/react';

function Page() {
	const helloWorld = useTranslation('Hello, world!');

	useEffect(() => {
		alert(helloWorld);
	}, [helloWorld]);

	return (
		<title>{useTranslation('My page title')}</title>
	);
}

Verwendung des translateEntries Dienstprogramms.
Übersetze Zeichenketten serverseitig. Verbessere deine OpenGraph Bilder.

import {createEntry, translateEntries} from 'tacotranslate';

async function generateMetadata(locale = 'es') {
	const title = createEntry({string: 'Hello, world!'});
	const description = createEntry({string: 'TacoTranslate on the server'});

	const translations = await translateEntries(
		tacoTranslate,
		{origin: 'opengraph', locale},
		[title, description]
	);

	return {
		title: translations(title),
		description: translations(description)
	};
}

Wie Zeichenketten übersetzt werden

Wenn Strings unsere Server erreichen, validieren und speichern wir sie zuerst und geben dann sofort eine maschinelle Übersetzung zurück. Während maschinelle Übersetzungen im Allgemeinen eine geringere Qualität im Vergleich zu unseren KI-Übersetzungen haben, bieten sie eine schnelle erste Antwort.

Gleichzeitig starten wir einen asynchronen Übersetzungsauftrag, um eine hochwertige, hochmoderne KI-Übersetzung für Ihren String zu erzeugen. Sobald die KI-Übersetzung fertig ist, ersetzt sie die maschinelle Übersetzung und wird gesendet, wann immer Sie Übersetzungen für Ihre Strings anfordern.

Wenn Sie eine Zeichenkette manuell übersetzt haben, haben diese Übersetzungen Vorrang und werden stattdessen zurückgegeben.

Nutzung von Origins

TacoTranslate-Projekte enthalten das, was wir Origins nennen. Sie können sie sich als Einstiegspunkte, Ordner oder Gruppen für Ihre Strings und Übersetzungen vorstellen.

import {TacoTranslate} from 'tacotranslate/react';

function Menu() {
	return (
		<TacoTranslate origin="application-menu">
			// ...
		</TacoTranslate>
	);
}

Origins ermöglichen es Ihnen, Strings in sinnvolle Container zu trennen. Zum Beispiel könnten Sie einen Origin für die Dokumentation und einen anderen für Ihre Marketingseite haben.

Für eine feinere Steuerung könnten Sie Origins auf Komponentenebene einrichten.

Um dies zu erreichen, ziehen Sie in Betracht, mehrere TacoTranslate Provider in Ihrem Projekt zu verwenden.

Bitte beachten Sie, dass derselbe String in verschiedenen Origins unterschiedliche Übersetzungen erhalten kann.

Letztendlich liegt es an Ihnen und Ihren Bedürfnissen, wie Sie Strings in Origins aufteilen. Beachten Sie jedoch, dass viele Strings innerhalb eines Origins die Ladezeiten erhöhen können.

Umgang mit Variablen

Sie sollten immer Variablen für dynamische Inhalte verwenden, wie zum Beispiel Benutzernamen, Daten, E-Mail-Adressen und mehr.

Variablen in Zeichenketten werden mit doppelten Klammern deklariert, wie {{variable}}.

import {Translate} from 'tacotranslate/react';

function Greeting() {
	const name = 'Juan';
	return <Translate string="Hello, {{name}}!" variables={{name}} />;
}
import {useTranslation} from 'tacotranslate/react';

function useGreeting() {
	const name = 'Juan';
	return useTranslation('Hello, {{name}}!', {variables: {name}});
}

Verwaltung von HTML-Inhalten

Standardmäßig unterstützt und rendert die Translate Komponente HTML-Inhalte. Sie können dieses Verhalten jedoch deaktivieren, indem Sie useDangerouslySetInnerHTML auf false setzen.

Das Deaktivieren der HTML-Darstellung wird dringend empfohlen, wenn unzuverlässige Inhalte, wie z. B. von Nutzern erstellte Inhalte, übersetzt werden.

Alle Ausgaben werden vor der Darstellung immer mit sanitize-html bereinigt.

import {Translate} from 'tacotranslate/react';

function Page() {
	return (
		<Translate
			string={`
				Welcome to <strong>my</strong> website.
				I’m using <a href="{{url}}">TacoTranslate</a> to translate text.
			`}
			variables={{url: 'https://tacotranslate.com'}}
			useDangerouslySetInnerHTML={false}
		/>
	);
}

Das obige Beispiel wird als Klartext angezeigt.

Serverseitiges Rendering

Ein Produkt von Nattskiftet