gt-react@10.8.0
Resumen
En gt-react 10.8.0, hemos añadido compatibilidad con feature flags mediante el campo enableI18n. Esto te permite desactivar la internacionalización de forma condicional, con compatibilidad con patrones de carga tanto síncronos como asíncronos.
Comportamiento síncrono
Cuando enableI18n se establece en false, la funcionalidad de i18n se desactiva de la siguiente manera:
- Se configura la lista de configuraciones regionales para que incluya solo la configuración regional predeterminada
- Se establece la configuración regional del usuario en la configuración regional predeterminada
<GTProvider enableI18n={false}>
{/* i18n deshabilitado - solo la configuración regional predeterminada disponible */}
</GTProvider>Comportamiento asíncrono
Para los feature flags dinámicos, usa enableI18nLoaded para indicar el estado de carga:
<GTProvider
enableI18n={featureFlag}
enableI18nLoaded={isLoaded}
>
{/* Contenido */}
</GTProvider>Cuando enableI18nLoaded no es undefined:
false: El feature flag se está cargando (usa el valor predeterminado deenableI18n)true: El feature flag terminó de cargarse
Mientras se carga, la biblioteca comprueba la cookie generaltranslation.enable-i18n para determinar el estado actual. Una vez que termina de cargarse, el valor explícito de enableI18n tiene prioridad.
Consideraciones sobre SSG/SSR
Con SSG, se sacrifica el primer ciclo de renderizado cuando el valor predeterminado de enableI18n es false, ya que la generación estática no puede determinar el estado de la feature flag en tiempo de ejecución.
Actualmente, SSR se comporta de forma similar, aunque tenemos previsto añadir compatibilidad adecuada con SSR para Next.js Pages Router en futuras versiones. Para Next.js App Router, usa gt-next.