Zum Hauptinhalt springen

Übersetzen

createT​

Erzeugt eine an den Locales-Typ der Lösung gebundene t-Funktion. Signatur siehe createT in der API-Referenz. Der Key wird als Selektor-Funktion übergeben, wodurch die IDE den vollständigen Key-Baum vorschlägt und ein Tippfehler ein Compile-Fehler ist.

import { createT } from "@one-unity/library/ou.sp.I18n";
import type { Locales } from "./ou.sp.IF.installer.step.globalPropertiesLocales";

const t = createT<Locales>();

const label = t((l) => l.folder.importFile);
const message = t((l) => l.importFile.transform.error.overall, { count: 5 });

Statt der Selektor-Funktion kann auch ein Key-String übergeben werden, falls der Key erst zur Laufzeit bekannt ist. Die vollständige Signatur der zurückgegebenen Funktion steht unter TypedTFunc.

makeT​

Bündelt die drei typisierten Helfer t, TError und insertStatusEntry in einem Aufruf, Signatur siehe makeT. Das ist die übliche Form am Anfang eines Portalskripts, wenn mehr als eine der Funktionen gebraucht wird:

import { makeT } from "@one-unity/library/ou.sp.I18n";
import type { Locales } from "./ou.sp.IF.installer.step.globalPropertiesLocales";

const { t, TError, insertStatusEntry } = makeT<Locales>();

Wird nur eine der Funktionen benötigt, sind createT, createTError und createInsertStatusEntry einzeln verfügbar.

t​

Die untypisierte Variante (t in der API-Referenz), die von createT intern verwendet wird. Direkt aufrufen sollte man sie nur dort, wo der Key nicht aus einer bekannten Locale-Struktur stammt — sonst geht die Auto-Completion verloren.

Verhalten​

Auflösung und Fallbacks
  • Existiert kein Eintrag für den Key, wird der Key selbst zurückgegeben und der Treffer-Fehlschlag per logDebug protokolliert. So bleibt die Oberfläche benutzbar, und fehlende Übersetzungen sind im Log auffindbar.
  • {{platzhalter}} ohne passenden Wert in data bleiben unverändert stehen. Sie werden nicht zu undefined gerendert.
  • Ohne data wird der Text unverändert zurückgegeben; eine Ersetzung findet dann gar nicht statt.