useGT
API-Referenz für die Zeichenkettenübersetzungsfunktion `useGT`
Überblick
Die Funktion useGT ist ein Hook zum Übersetzen von Strings während des Builds.
const t = useGT();
<p>{ t('Dieser Text wird übersetzt.') }</p>;Buildtime Translation:
useGT-Übersetzungen erfolgen zur Build‑Zeit, bevor deine App bereitgestellt wird.
Zwar kannst du Variablen an den übersetzten String übergeben, aber nur Inhalte übersetzen, die zur Build‑Zeit bekannt sind.
Referenz
Parameter
Keine
Rückgabewert
Eine Callback-Funktion t, die den bereitgestellten Inhalt übersetzt.
(content: string, options?: InlineTranslationOptions) => string| Name | Type | Description |
|---|---|---|
content | string | Der zu übersetzende Zeichenfolgeninhalt. |
options? | InlineTranslationOptions | options zur Anpassung des Verhaltens von t. |
Verhalten
Produktion
Während des CD-Prozesses wird sämtlicher Inhalt innerhalb einer t-Funktion übersetzt, bevor Ihre Anwendung bereitgestellt wird.
Das gewährleistet schnelle Ladezeiten für alle Locales, kann jedoch nur Inhalte übersetzen, die zur Build‑Zeit bekannt sind.
Nach der Generierung werden die Übersetzungen entweder (1) im CDN (Content Delivery Network) gespeichert oder (2) im Build‑Output Ihrer App, entsprechend Ihrer Konfiguration. Von dort wird der übersetzte Inhalt an Ihre Nutzer ausgeliefert. Wenn keine Übersetzung gefunden wird, wird auf den ursprünglichen Inhalt als Standardwert zurückgegriffen.
Befolgen Sie die Bereitstellungsanleitung hier.
Entwicklung
Während der Entwicklung übersetzt die Funktion t Inhalte bei Bedarf.
Das ist hilfreich, um zu sehen, wie deine App in verschiedenen Sprachen aussehen wird.
Denke daran, deiner Umgebung einen Dev API key hinzuzufügen, um dieses Verhalten zu aktivieren.
Bei bedarfsorientierter Übersetzung in der Entwicklung kann es zu einer Verzögerung kommen.
Dies tritt bei Produktions-Builds nicht auf, es sei denn, Inhalte werden ausdrücklich bei Bedarf übersetzt,
d. h. mit tx oder <Tx>.
Beispiel
Grundlegende Verwendung
Mit useGT können Sie Strings übersetzen.
import { useGT } from 'gt-next';
export default function TranslateGreeting() {
const t = useGT();
return (
<p>
{t('Hallo, Alice!')}
</p>
);
}Hinweis: „Alice“ wird in die bevorzugte Sprache des Nutzers übersetzt.
Verwendung von Variablen
Sie können Variablen in Wörterbuchübersetzungen verwenden.
import { useGT } from 'gt-next';
export default function TranslateGreeting() {
const t = useGT();
return (
<p>
{t('Hallo, {name}!', { name: 'Alice' })}
</p>
);
}Hinweis: „Alice“ wird nicht in die bevorzugte Sprache des Nutzers übersetzt, da es sich um eine Variable handelt.
Verwendung des ICU Message Format
gt-next unterstützt das ICU Message Format, mit dem Sie auch Variablen formatieren können.
import { useGT } from 'gt-next';
export default function TranslateGreeting() {
const t = useGT();
return (
<p>
{t('{count, plural, =0 {Keine Artikel} =1 {Ein Artikel} other {{count} Artikel}} im Warenkorb', { count: 10 })}
</p>
);
}Das ICU Message Format ist eine leistungsstarke Methode, um Variablen zu formatieren. Weitere Informationen findest du in der Dokumentation zum ICU Message Format.
Import aus gt-next/client
Wenn Sie unter der Direktive "use client" arbeiten, sollten Sie aus gt-next/client statt aus gt-next importieren.
"use client";
import { useGT } from 'gt-next/client';
export default function TranslateGreeting() {
const t = useGT();
return (
<p>
{t('Hallo, Alice!')}
</p>
);
}Hinweise
- Die Funktion
useGTist ein Hook, der Zeichenketten übersetzt. - Übersetzungen von Zeichenketten mit
useGTerfolgen vor der Laufzeit, während des Build-Prozesses (außer im Development-Modus).
Nächste Schritte
Wie ist diese Anleitung?