Haz tu pregunta y obtén un resumen del documento referenciando esta página y el proveedor AI de tu elección
Historial de versiones
- "Init doc"v9.5.519/9/2026
El contenido de esta página ha sido traducido con una IA.
Ver la última versión del contenido original en inglésSi tienes una idea para mejorar esta documentación, no dudes en contribuir enviando una pull request en GitHub.
Enlace de GitHub a la documentaciónCopiar el Markdown del documento a la portapapeles
Documentación del middleware de Remix 3 intlayer
El middleware intlayer para Remix 3 administra la capa de internacionalización en toda tu aplicación. Construido sobre estándares web (Request y Response), maneja el enrutamiento por locale (redirecciones y reescrituras internas), detecta la locale de la solicitud, la persiste en cookies y encabezados, y establece un alcance AsyncLocalStorage para que los controladores y componentes puedan acceder a las traducciones sin transferir props manualmente.
Uso
Registra el middleware intlayer al inicializar tu enrutador Remix 3:
Copiar el código al portapapeles
Descripción
El middleware intlayer realiza las siguientes tareas:
- Preparación de diccionarios: Ejecuta
prepareIntlayeral iniciar para garantizar que todos los diccionarios generados estén construidos y disponibles. - Enrutamiento por locale: Evalúa la solicitud frente a la estrategia de enrutamiento configurada (
prefix_always,prefix_as_needed,no_prefix):- Redirecciones: Si un usuario visita
/abouty debe ser redirigido a un prefijo de idioma (ej./es/about), el middleware emite una respuesta de redirección con los encabezadoslocationySet-Cookiecorrespondientes. - Reescrituras internas: Cuando un usuario accede a
/es/about, la URL se reescribe internamente para que tu controlador de ruta coincida con/about, mientras que la locale resuelta se registra comoes. - Alias de URL localizados: Respeta las reglas de reescritura de URL definidas en
intlayer.config.ts(ej. reescribir/es/abouta/es/acerca-de).
- Redirecciones: Si un usuario visita
- Resolución de locale: Detecta la locale activa en función del prefijo de URL, cookies persistidas, encabezados personalizados o preferencias de idioma del navegador
Accept-Language. - Inyección de contexto:
- Adjunta
IntlayerState(locale,defaultLocale,availableLocales) alRequestContextde Remix bajo la claveIntlayerycontext.intlayer. - Ejecuta el resto de la solicitud dentro de un alcance
AsyncLocalStorage(requestStorage), lo que permite queuseIntlayer,useDictionaryyuseLocalese invoquen limpiamente en controladores, vistas y componentes.
- Adjunta
- Persistencia: Adjunta los encabezados y cookies de locale salientes a la respuesta HTTP final para conservar la preferencia del usuario.
Parámetros
La función intlayer acepta IntlayerMiddlewareOptions opcionales:
Copiar el código al portapapeles
Acceso directo al contexto
Además de usar hooks, puedes acceder al IntlayerState resuelto directamente desde el contexto de solicitud de Remix:
Copiar el código al portapapeles
