Faça sua pergunta e obtenha um resumo do documento referenciando esta página e o provedor AI de sua escolha
Este documento está desatualizado, a versão base foi atualizada em 16 de novembro de 2025.
Ir para a documentação em inglêsHistó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 getLocalizedUrl em intlayer
Descrição
A função getLocalizedUrl gera uma URL localizada prefixando a URL fornecida com o locale especificado. Ela lida tanto com URLs absolutas quanto relativas, garantindo que o prefixo de locale correto seja aplicado com base na configuração.
Parâmetros
url: string- Descrição: A string da URL original a ser prefixada com um locale.
- Tipo:
string
currentLocale: Locales- Descrição: O locale atual para o qual a URL está sendo localizada.
- Tipo:
Locales
locales: Locales[]- Descrição: Array opcional de locales suportados. Por padrão, os locales configurados no projeto são fornecidos.
- Tipo:
Locales[] - Padrão:
Configuração do Projeto
defaultLocale: Locales- Descrição: O locale padrão para a aplicação. Por padrão, o locale padrão configurado no projeto é fornecido.
- Tipo:
Locales - Padrão:
Configuração do Projeto
prefixDefault: boolean- Descrição: Indica se deve prefixar a URL para o locale padrão. Por padrão, o valor configurado no projeto é fornecido.
- Tipo:
boolean - Padrão:
Configuração do Projeto
Retorno
- Tipo:
string - Descrição: A URL localizada para o locale especificado.
Exemplo de Uso
URLs Relativas
Copiar o código para a área de transferência
import { getLocalizedUrl, Locales } from "intlayer";
getLocalizedUrl(
"/about",
Locales.FRENCH,
[Locales.ENGLISH, Locales.FRENCH],
Locales.ENGLISH,
false
);
// Saída: "/fr/about" para o locale francês
// Saída: "/about" para o locale padrão (inglês)URLs Absolutas
Copiar o código para a área de transferência
getLocalizedUrl( "https://example.com/about", Locales.FRENCH, // Locale Atual [Locales.ENGLISH, Locales.FRENCH], // Locales Suportados Locales.ENGLISH, // Locale Padrão false // Prefixar Locale Padrão); // Saída: "https://example.com/fr/about" para o francêsgetLocalizedUrl( "https://example.com/about", Locales.ENGLISH, // Locale Atual [Locales.ENGLISH, Locales.FRENCH], // Locales Suportados Locales.ENGLISH, // Locale Padrão false // Prefixar Locale Padrão); // Saída: "https://example.com/about" para o inglêsgetLocalizedUrl( "https://example.com/about", Locales.ENGLISH, // Locale Atual [Locales.ENGLISH, Locales.FRENCH], // Locales Suportados Locales.ENGLISH, // Locale Padrão true // Prefixar Locale Padrão); // Saída: "https://example.com/en/about" para o inglêsLocale Não Suportado
Copiar o código para a área de transferência
getLocalizedUrl( "/about", Locales.ITALIAN, // Locale Atual [Locales.ENGLISH, Locales.FRENCH], // Locales Suportados Locales.ENGLISH // Locale Padrão); // Saída: "/about" (nenhum prefixo aplicado para locale não suportado)Casos Especiais
Sem Segmento de Locale:
- Se a URL não contiver nenhum segmento de locale, a função adiciona com segurança o locale apropriado como prefixo.
Locale Padrão:
- Quando
prefixDefaultéfalse, a função não adiciona prefixo à URL para o locale padrão.
- Quando
Locales Não Suportados:
- Para locales não listados em
locales, a função não aplica nenhum prefixo.
- Para locales não listados em
Uso em Aplicações
Em uma aplicação multilíngue, configurar as definições de internacionalização com locales e defaultLocale é fundamental para garantir que o idioma correto seja exibido. Abaixo está um exemplo de como getLocalizedUrl pode ser usado na configuração de uma aplicação:
Copiar o código para a área de transferência
import { Locales, type IntlayerConfig } from "intlayer";
// Configuração para os locales suportados e locale padrão
export default {
internationalization: {
locales: [Locales.ENGLISH, Locales.FRENCH, Locales.SPANISH],
defaultLocale: Locales.ENGLISH,
},
} satisfies IntlayerConfig;
export default config;A configuração acima garante que a aplicação reconheça ENGLISH, FRENCH e SPANISH como idiomas suportados e utilize ENGLISH como idioma padrão.
Usando essa configuração, a função getLocalizedUrl pode gerar URLs localizadas dinamicamente com base na preferência de idioma do usuário:
Copiar o código para a área de transferência
getLocalizedUrl("/about", Locales.FRENCH); // Saída: "/fr/about"getLocalizedUrl("/about", Locales.SPANISH); // Saída: "/es/about"getLocalizedUrl("/about", Locales.ENGLISH); // Saída: "/about"Ao integrar getLocalizedUrl, os desenvolvedores podem manter estruturas de URL consistentes em múltiplos idiomas, melhorando tanto a experiência do usuário quanto o SEO.