getGT()
API-Referenz für die getGT() String-Übersetzungsfunktion
Überblick
Die getGT()
-Funktion ist eine asynchrone Funktion zur Übersetzung von Strings zur Build-Zeit.
const t = await getGT();
<p>{ t('This text will be translated') }</p>;
Build-Zeit-Übersetzung:
getGT()
-Übersetzungen erfolgen zur Build-Zeit, bevor Ihre App bereitgestellt wird.
Obwohl Sie Variablen an den übersetzten String übergeben können, können Sie nur Inhalte übersetzen, die zur Build-Zeit bekannt sind.
Referenz
Parameter
Keine
Rückgabewert
Ein Promise einer Callback-Funktion, t()
, die den bereitgestellten Inhalt übersetzt.
Promise<(content: string, options?: InlineTranslationOptions) => string>
Name | Typ | Beschreibung |
---|---|---|
content | string | Der String-Inhalt, der übersetzt werden soll. |
options? | InlineTranslationOptions | Übersetzungsoptionen zur Anpassung des Verhaltens von t() . |
Verhalten
Produktion
Während des CD-Prozesses wird jeder Inhalt innerhalb einer t()
-Funktion übersetzt, bevor Ihre Anwendung bereitgestellt wird.
Dies gewährleistet schnelle Ladezeiten für alle Sprachen, kann aber nur Inhalte übersetzen, die zur Build-Zeit bekannt sind.
Nach der Generierung werden Übersetzungen entweder (1) im CDN gespeichert oder (2) in der Build-Ausgabe Ihrer App gespeichert, je nach Ihrer Konfiguration. Von dort wird der übersetzte Inhalt an Ihre Benutzer ausgeliefert. Wenn eine Übersetzung nicht gefunden wird, wird auf den ursprünglichen Inhalt zurückgegriffen.
Stellen Sie sicher, dass Sie dem Bereitstellungsleitfaden hier folgen.
Entwicklung
Während der Entwicklung übersetzt die t()
-Funktion Inhalte auf Anfrage.
Dies ist nützlich für die Prototypenerstellung, um zu sehen, wie Ihre App in verschiedenen Sprachen aussehen wird.
Denken Sie daran, einen Dev API-Schlüssel zu Ihrer Umgebung hinzuzufügen, um dieses Verhalten zu aktivieren.
Sie werden eine Verzögerung während der On-Demand-Übersetzung in der Entwicklung bemerken.
Dies wird bei Produktions-Builds nicht auftreten, es sei denn, Inhalte werden explizit on-demand übersetzt,
d.h. mit tx()
oder <Tx>
.
Beispiel
Grundlegende Verwendung
Sie können getGT()
verwenden, um Strings zu übersetzen.
import { getGT } from 'gt-next/server';
export default async function TranslateGreeting() {
const t = await getGT();
return (
<p>
{t('Hello, Alice!')}
</p>
);
}
Hinweis: "Alice" wird in die bevorzugte Sprache des Benutzers übersetzt.
Verwendung von Variablen
Sie können Variablen an Wörterbuchübersetzungen übergeben.
import { getGT } from 'gt-next/server';
export default async function TranslateGreeting() {
const t = await getGT();
return (
<p>
{t('Hello, {name}!', { variables: { name: 'Alice' } })}
</p>
);
}
Hinweis: "Alice" wird nicht in die bevorzugte Sprache des Benutzers übersetzt, da es sich um eine Variable handelt.
Verwendung des ICU-Nachrichtenformats
gt-next
unterstützt das ICU-Nachrichtenformat, mit dem Sie auch Ihre Variablen formatieren können.
import { getGT } from 'gt-next/server';
export default async function TranslateGreeting() {
const t = await getGT();
return (
<p>
{t('There are {count, plural, =0 {no items} =1 {one item} other {{count} items}} in the cart', { count: 10 })}
</p>
);
}
Das ICU-Nachrichtenformat ist eine mächtige Möglichkeit, Ihre Variablen zu formatieren. Weitere Informationen finden Sie in der ICU-Nachrichtenformat-Dokumentation.
Notizen
- Die
getGT()
-Funktion ist eine serverseitige Funktion, die Strings übersetzt. - Übersetzungen von Strings mit
getGT()
erfolgen vor der Laufzeit, während des Build-Prozesses (außer in der Entwicklung).
Nächste Schritte
- Siehe
useGT()
für clientseitige String-Übersetzungen zur Buildzeit. - Für Laufzeit-Übersetzungen siehe
tx()
und<Tx>
. - Siehe
InlineTranslationOptions
für weitere Informationen zur Anpassung von Übersetzungen.
Wie ist dieser Leitfaden?