loadTranslations
API-Referenz für die Funktion loadTranslations().
Übersicht
Verwenden Sie loadTranslations, um das Ladeverhalten für Übersetzungen festzulegen.
Standardmäßig lädt Ihre App in der Produktion Übersetzungen über das GT‑CDN (Content Delivery Network).
Sie können eine loadTranslations‑Funktion angeben, um Übersetzungen aus einer anderen Quelle zu laden, zum Beispiel:
- aus dem Bundle Ihrer App (am häufigsten)
- aus einer Datenbank
- aus einer API
- aus einem anderen CDN
Wir bieten integrierte Unterstützung für das Laden von Übersetzungen aus lokalen files im Bundle Ihrer App. Folgen Sie dieser Anleitung, um lokale Übersetzungen in Ihrer Next.js‑App einzurichten.
Wenn Sie Ihre eigenen Übersetzungen manuell definieren möchten, sehen Sie sich die Anleitung für benutzerdefinierte Übersetzungen
sowie die Funktion loadDictionary an.
Referenz
Parameter
Prop
Type
Beschreibung
| Typ | Beschreibung |
|---|---|
locale | Die Locale, für die Übersetzungen geladen werden sollen. |
Rückgabewert
Ein Promise<any>, das zu einem Wörterbuch aufgelöst wird, das ids den Übersetzungen für die angegebene locale zuordnet.
Setup
Definieren Sie loadTranslations als Standardexport für eine Datei mit dem Namen loadTranslations.js oder loadTranslations.ts, entweder im Verzeichnis src/ oder im Projektwurzelverzeichnis.
Stellen Sie sicher, dass die Funktion ein Promise zurückgibt, das zu einem Objekt mit Übersetzungen für die angegebene locale aufgelöst wird.
export default async function loadTranslations(locale) {
const translations = await import(`../public/locales/${locale}.json`);
return translations.default;
};Wenn Sie einen anderen Namen oder Pfad verwenden möchten, übergeben Sie den relativen Pfad über den Parameter loadTranslationsPath in withGTConfig.
Beispiele
Übersetzungen aus deinem Bundle abrufen
export default async function loadTranslations(locale) {
const translations = await import(`../public/locales/${locale}.json`);
return translations.default;
};Wenn sie für die Verwendung von lokalen Übersetzungen konfiguriert sind, speichert der Befehl gtx-cli translate die Übersetzungen im Dateibaum Ihres Projekts.
npx gtx-cli translateÜbersetzungen aus einem Content Delivery Network (CDN) laden
export default async function loadTranslations(locale) {
try {
const translations = await fetch(`https://your-cdn.com/translations/${locale}.json`);
const data = await translations.json();
return data;
} catch (e) {
console.error(e);
return {};
}
};Übersetzungen aus der eigenen Datenbank laden
export default async function loadTranslations(locale) {
try {
const translations = await prisma.translation.findUnique({
where: {
locale: locale,
},
});
return translations;
} catch (e) {
console.error(e);
return {};
}
};Frage: Was ist der Unterschied zwischen loadTranslations und loadDictionary?
loadTranslationswird verwendet, um benutzerdefiniertes Ladeverhalten für das Abrufen von Übersetzungen in Ihrer App zu definieren. Das kann das Laden von Übersetzungen aus einem CDN (Content Delivery Network), aus einer Datenbank oder aus dem Bundle Ihrer App sein. Dabei handelt es sich in der Regel um maschinell erzeugte Übersetzungen, die vom CLI-Tool (Command-Line Interface) verwaltet werden und sich nicht besonders benutzerfreundlich bearbeiten lassen.loadDictionaryist für Implementierungen vongt-nextals eigenständige Bibliothek gedacht. Nutzer bringen ihre eigenen Übersetzungen mit, es wird keine Übersetzungsinfrastruktur verwendet.
Hinweise
loadTranslationsermöglicht es Ihnen, das Laden von Übersetzungen in Ihrer App für die Produktion anzupassen.- Der häufigste Anwendungsfall ist das Hinzufügen von local translations
Nächste Schritte
- Erfahren Sie, warum Sie local translations verwenden sollten
- Fügen Sie eigene Übersetzungen mit der Anleitung für benutzerdefinierte Übersetzungen hinzu
Wie ist diese Anleitung?