Zurück

gt-react@10.8.0

Ernest McCarter avatarErnest McCarter
gt-react10.8.0feature flagsi18ntranslation

Übersicht

In gt-react 10.8.0 haben wir Feature-Flag-Unterstützung über das Feld enableI18n hinzugefügt. Damit kannst du die Internationalisierung bei Bedarf deaktivieren, mit Unterstützung für synchrone und asynchrone Lademuster.


Synchrones Verhalten

Wenn enableI18n auf false gesetzt ist, wird die i18n-Funktionalität deaktiviert, indem:

  • die Locale-Liste auf nur die Standard-Locale gesetzt wird
  • die Locale des Benutzers auf die Standard-Locale gesetzt wird
<GTProvider enableI18n={false}>
  {/* i18n deaktiviert – nur Standard-Locale verfügbar */}
</GTProvider>

Asynchrones Verhalten

Für dynamische Feature-Flags verwende enableI18nLoaded, um den Ladezustand anzuzeigen:

<GTProvider 
  enableI18n={featureFlag} 
  enableI18nLoaded={isLoaded}
>
  {/* Inhalt */}
</GTProvider>

Wenn enableI18nLoaded nicht undefined ist:

  • false: Feature-Flag wird geladen (verwendet den Standardwert von enableI18n)
  • true: Feature-Flag wurde vollständig geladen

Während des Ladevorgangs prüft die Bibliothek das Cookie generaltranslation.enable-i18n, um den aktuellen Status zu bestimmen. Sobald der Ladevorgang abgeschlossen ist, hat der explizite enableI18n-Wert Vorrang.


SSG/SSR-Anmerkungen

Bei SSG geht der erste Render-Zyklus verloren, wenn der Standardwert von enableI18n auf false gesetzt ist, da die statische Generierung den zur Laufzeit gesetzten Feature-Flag-Status nicht bestimmen kann.

SSR verhält sich derzeit ähnlich, allerdings planen wir, in zukünftigen Releases eine vollständige SSR-Unterstützung für den Next.js Pages Router hinzuzufügen. Für den Next.js App Router verwende stattdessen gt-next.