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
- "Histórico inicial"v5.5.1029/06/2025
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: Função t no express-intlayer
A função t no pacote express-intlayer é a utilidade principal para fornecer respostas localizadas na sua aplicação Express. Ela simplifica a internacionalização (i18n) ao selecionar dinamicamente o conteúdo com base na língua preferida do usuário.
Visão Geral
A função t é usada para definir e recuperar traduções para um conjunto específico de idiomas. Ela determina automaticamente a língua apropriada a ser retornada com base nas configurações da requisição do cliente, como o cabeçalho Accept-Language. Se a língua preferida não estiver disponível, ela recorre de forma elegante ao locale padrão especificado na sua configuração.
Principais Características
- Localização Dinâmica: Seleciona automaticamente a tradução mais apropriada para o cliente.
- Recurso de Retorno ao Locale Padrão: Retorna a um locale padrão caso a língua preferida do cliente não esteja disponível, garantindo continuidade na experiência do usuário.
- Leve e Rápido: Projetado para aplicações de alto desempenho, garantindo sobrecarga mínima.
- Suporte ao Modo Estrito: Impõe aderência rigorosa aos locales declarados para comportamento confiável.
Assinatura da Função
Parâmetros
translations: Um objeto onde as chaves são códigos de locale (ex:en,fr,es-MX) e os valores são as strings traduzidas correspondentes.
Retorno
- Uma string representando o conteúdo na língua preferida do cliente.
Carregando o Manipulador de Requisição de Internacionalização
Para garantir que a funcionalidade de internacionalização fornecida pelo express-intlayer funcione corretamente, você deve carregar o middleware de internacionalização no início da sua aplicação Express. Isso habilita a função t e assegura o tratamento adequado da detecção de locale e tradução.
Coloque o middleware app.use(intlayer()) antes de quaisquer rotas na sua aplicação para garantir que todas as rotas se beneficiem da internacionalização:
Por que isso é necessário
- Detecção de Localidade: O middleware
intlayerprocessa as requisições recebidas para detectar a localidade preferida do usuário com base nos cabeçalhos, cookies ou outros métodos configurados. - Contexto de Tradução: Configura o contexto necessário para que a função
topere corretamente, garantindo que as traduções sejam retornadas no idioma correto. - Prevenção de Erros: Sem este middleware, usar a função
tresultará em erros de tempo de execução porque as informações necessárias sobre a localidade não estarão disponíveis.
Exemplos de Uso
Exemplo Básico
Sirva conteúdo localizado em diferentes idiomas:
Requisições do Cliente:
- Um cliente com
Accept-Language: frreceberáBienvenue!. - Um cliente com
Accept-Language: esreceberá¡Bienvenido!. - Um cliente com
Accept-Language: dereceberáWelcome!(local padrão).
Tratamento de Erros
Forneça mensagens de erro em vários idiomas:
Usando Variantes de Localidade
Especifique traduções para variantes específicas de localidade:
Tópicos Avançados
Mecanismo de Fallback
Se uma localidade preferida não estiver disponível, a função t fará fallback para a localidade padrão definida na configuração:
Por exemplo:
- Se
defaultLocaleforLocales.CHINESEe um cliente solicitarLocales.DUTCH, a tradução retornada será o valor padrão deLocales.CHINESE. - Se
defaultLocalenão estiver definido, a funçãotusará como fallback o valor deLocales.ENGLISH.
Aplicação do Modo Estrito
Configure a função t para impor a aderência estrita às localidades declaradas:
Abrir a tabela em um modal para ver todo o conteúdo claramente
| Modo | Comportamento |
|---|---|
strict | Todas as localidades declaradas devem ter traduções fornecidas. Localidades ausentes gerarão erros. |
inclusive | As localidades declaradas devem ter traduções. Localidades ausentes geram avisos, mas são aceitas. |
loose | Qualquer localidade existente é aceita, mesmo que não declarada. |
Exemplo de Configuração:
Integração com TypeScript
A função t é segura em termos de tipos quando usada com TypeScript. Defina um objeto de traduções com segurança de tipos:
Erros Comuns e Solução de Problemas
Abrir a tabela em um modal para ver todo o conteúdo claramente
| Problema | Causa | Solução |
|---|---|---|
Função t não funcionando | Middleware não carregado | Certifique-se de que app.use(intlayer()) está adicionado antes das rotas. |
| Erro de traduções faltando | Modo estrito ativado sem todas as localidades | Forneça todas as traduções necessárias. |
Dicas para Uso Eficaz
- Centralize as Traduções: Use um módulo centralizado ou arquivos JSON para gerenciar as traduções e melhorar a manutenção.
- Valide as Traduções: Garanta que cada variante de idioma tenha uma tradução correspondente para evitar retornos desnecessários.
- Combine com i18n no Frontend: Sincronize com a internacionalização do frontend para uma experiência de usuário fluida em todo o aplicativo.
- Avalie o Desempenho: Teste os tempos de resposta do seu aplicativo ao adicionar traduções para garantir impacto mínimo.
Conclusão
A função t é uma ferramenta poderosa para internacionalização no backend. Ao usá-la de forma eficaz, você pode criar uma aplicação mais inclusiva e amigável para um público global. Para uso avançado e opções detalhadas de configuração, consulte a documentação.