Faça sua pergunta e obtenha um resumo do documento referenciando esta página e o provedor AI de sua escolha
Histórico de versões
- "Init doc"v9.5.519/09/2026
O conteúdo desta página foi traduzido com uma IA.
Veja a última versão do conteúdo original em inglêsSe você tiver uma ideia para melhorar esta documentação, sinta-se à vontade para contribuir enviando uma pull request no GitHub.
Link do GitHub para a documentaçãoCopiar o Markdown do documento para a área de transferência
Documentação do middleware Remix 3 intlayer
O middleware intlayer para Remix 3 gerencia a camada de internacionalização em toda a sua aplicação. Desenvolvido sobre padrões web (Request e Response), gerencia o roteamento baseado em locale (redirecionamentos e reescritas internas), detecta a locale da requisição, persiste-a em cookies e cabeçalhos, e configura um escopo AsyncLocalStorage para que os manipuladores e componentes possam acessar traduções sem repasse manual de props.
Uso
Registre o middleware intlayer ao inicializar seu roteador Remix 3:
Copiar o código para a área de transferência
Descrição
O middleware intlayer realiza as seguintes tarefas:
- Preparação de dicionários: Executa
prepareIntlayerna inicialização para garantir que todos os dicionários gerados estejam construídos e disponíveis. - Roteamento por locale: Avalia a requisição de acordo com a estratégia de roteamento configurada (
prefix_always,prefix_as_needed,no_prefix):- Redirecionamentos: Se um usuário acessar
/aboute dever ser redirecionado para um prefixo de idioma (ex.:/pt/about), o middleware retorna uma resposta de redirecionamento com os cabeçalhoslocationeSet-Cookieadequados. - Reescritas internas: Quando um usuário acessa
/pt/about, a URL é reescrita internamente para que o manipulador corresponda a/about, enquanto a locale resolvida é capturada comopt. - Aliases de URL localizados: Respeita regras de reescrita de URL definidas em
intlayer.config.ts(ex.: reescrever/pt/aboutpara/pt/sobre).
- Redirecionamentos: Se um usuário acessar
- Resolução de locale: Detecta a locale ativa com base no prefixo da URL, cookies persistidos, cabeçalhos personalizados ou preferências do navegador
Accept-Language. - Injeção de contexto:
- Anexa
IntlayerState(locale,defaultLocale,availableLocales) aoRequestContextdo Remix sob a chaveIntlayerecontext.intlayer. - Executa o restante da requisição dentro de um escopo
AsyncLocalStorage(requestStorage), permitindo queuseIntlayer,useDictionaryeuseLocalesejam chamados de forma limpa em manipuladores, visualizações e componentes.
- Anexa
- Persistência: Anexa os cabeçalhos e cookies de locale de saída à resposta HTTP final para reter a preferência do usuário.
Parâmetros
A função intlayer aceita IntlayerMiddlewareOptions opcionais:
Copiar o código para a área de transferência
Acesso direto ao contexto
Além de usar hooks, você pode acessar o IntlayerState resolvido diretamente a partir do contexto de requisição do Remix:
Copiar o código para a área de transferência
