tx()
API-Referenz für die tx String-Übersetzungsfunktion
Überblick
Die tx()
-Funktion ist eine serverseitige Funktion zum Übersetzen von Strings.
await tx('Hello, world!'); // returns 'Hola, mundo!'
Laufzeit-Übersetzung:
tx()
-Übersetzungen erfolgen zur Laufzeit.
Das bedeutet, dass die Übersetzung live durchgeführt wird, sodass Sie Inhalte übersetzen können, die zur Laufzeit bekannt sind.
Referenz
Parameter
Prop | Type | Default |
---|---|---|
options?? | RuntimeTranslationOptions | {} |
content? | string | - |
Name | Beschreibung |
---|---|
content | Der String, der übersetzt werden muss. |
options | Übersetzungsoptionen zur Anpassung des Verhaltens von tx() . Siehe RuntimeTranslationOptions . |
Rückgabewert
Ein Promise, das zu einem String mit dem übersetzten Inhalt aufgelöst wird, oder dem ursprünglichen Inhalt, falls keine Übersetzung erforderlich ist.
Verhalten
Die tx()
-Funktion übersetzt Strings zur Laufzeit.
Das bedeutet, dass Übersetzungen live durchgeführt werden, sodass Sie Inhalte übersetzen können, die erst zur Laufzeit bekannt sind.
Der Kompromiss ist, dass es eine Verzögerung gibt, während auf das Laden einer On-Demand-Übersetzung gewartet wird, was deutlich langsamer ist.
Unser Rat ist, alles zu übersetzen, was Sie zur Build-Zeit mit getGT()
, useGT()
oder <T>
übersetzen können,
und On-Demand-Übersetzungen wie tx()
und <Tx>
nur bei Bedarf zu verwenden.
Stellen Sie sicher, dass Sie der Deployment-Anleitung hier folgen.
Beispiel
Grundlegende Verwendung
Sie können tx()
verwenden, um Strings zu übersetzen.
import { tx } from 'gt-next/server';
export default async function translateGreeting() {
return await tx("Hello, world!");
}
Kontext hinzufügen
Sie können die Übersetzung anpassen, indem Sie einen Kontext bereitstellen, der bei der Übersetzung berücksichtigt werden soll.
import { tx } from 'gt-next/server';
export default async function TranslateWithOptions() {
return await tx("Hello, world!", {
$context: 'Translate informally'
});
}
Verwendung von Variablen
Um Werte an Ihren String zu übergeben, müssen Sie (1) einen Bezeichner zuweisen und (2) den Bezeichner im übergebenen Objekt referenzieren.
import { tx } from 'gt-next/server';
export default async function translateWithVariables() {
return await tx("The cost is {price, number, ::currency/USD}", {
price: 29.99,
});
}
Ein Gebietsschema angeben
Sie können ein Gebietsschema für die Übersetzung angeben. Standardmäßig ist das Gebietsschema auf die bevorzugte Sprache des Benutzers eingestellt.
import { tx } from 'gt-next/server';
export default async function translateWithLocale() {
return await tx("Hello, world!", { $locale: 'fr' });
}
Hinweise
tx()
ausschließlich für serverseitige Verwendung und kann nicht in clientseitigen Komponenten verwendet werden.- Übersetzungen mit
tx()
erfolgen zur Laufzeit, das bedeutet sie werden live übersetzt. Dies ist deutlich langsamer als Übersetzungen zur Build-Zeit.
Nächste Schritte
- Siehe
useGT()
undgetGT()
für die Übersetzung von Strings vor der Bereitstellung. - Für die Übersetzung von jsx, siehe
<T>
und<Tx>
. - Siehe
RuntimeTranslationOptions
für weitere Informationen zur Anpassung von Übersetzungen.
Wie ist dieser Leitfaden?