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
- "Doc inicial"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 hook useLocale
O hook useLocale de astro-intlayer fornece acesso ao locale da requisição atual, ao locale padrão configurado e a todos os locales disponíveis em aplicações Astro.
Ele se comporta de maneira consistente no frontmatter .astro renderizado no servidor e em blocos <script> do lado do cliente.
Utilização
No Frontmatter de componentes (Renderizado no Servidor)
Copiar o código para a área de transferência
Em <script> do cliente (Interativo)
Copiar o código para a área de transferência
Valores de retorno
O hook retorna um objeto do tipo UseLocaleResult:
Abrir a tabela em um modal para ver todo o conteúdo claramente
| Propriedade | Tipo | Descrição |
|---|---|---|
locale | DeclaredLocales | O locale ativo. |
defaultLocale | DeclaredLocales | O locale de fallback padrão configurado em intlayer.config.ts. |
availableLocales | DeclaredLocales[] | Array de todos os locales suportados configurados para o projeto. |
setLocale | (locale: LocalesValues) => void | Função para atualizar o locale. (Interativa no <script>, avisa durante SSR). |
subscribe | (callback: () => void) => () => void | Inscreve-se nas alterações de locale no lado do cliente. |
Comportamento Servidor vs Cliente
- Durante SSR / Renderização no Servidor: Uma requisição é renderizada uma vez com parâmetros fixos. Chamar
setLocale()durante a renderização no servidor não tem efeito e emite um aviso; a alteração de locale deve ser feita no cliente ou navegando para a URL do locale desejado. - Em scripts do cliente:
setLocaleatualiza a store do cliente e atualiza cookies persistidos ou o armazenamento local de acordo com sua configuração do Intlayer.
