InícioAmbiente de testeVitrineAppDocBlog
    • Englishinglês
      EN
    • русскийrusso
      RU
    • 日本語japonês
      JA
    • françaisfrancês
      FR
    • 한국어coreano
      KO
    • 中文chinês
      ZH
    • españolespanhol
      ES
    • Deutschalemão
      DE
    • العربيةárabe
      AR
    • italianoitaliano
      IT
    • British Englishinglês (Reino Unido)
      EN-GB
    • portuguêsportuguês
      PT
    • हिन्दीhindi
      HI
    • Türkçeturco
      TR
    • polskipolonês
      PL
    • Indonesiaindonésio
      ID
    • Tiếng Việtvietnamita
      VI
    • українськаucraniano
      UK
    /
    Filtrar documentação por framework
    Alt+←
    Por que Intlayer?
    Começar
    Conceito
    • Como o Intlayer funciona
    • Configuração
    • TestFillBuildWatchExtractLoginPushPullConfigurationListVersionEditorLiveDebugDoc ReviewDoc TranslateSDK
    • Editor visual
    • CMS
    • Integração CI/CD
    • TraduçãoPluralEnumeraçãoCondiçãoGêneroInserçãoArquivoAninhamentoMarkdownHTMLBusca de função
    • Arquivo por locale
    • Compilador
    • Preenchimento automático
    • Testes
    • Otimização de bundle
    Ambiente
    • Next.js 14 e App Router
      Next.js 15
      Next.js sem locale URL
      Next.js e Page Router
      Compiler
    • Tanstack Start Solid
    • Astro e React
      Astro e Svelte
      Astro e Vue
      Astro e Solid
      Astro e Preact
      Astro e Lit
      Astro e Vanilla JS
    • React Router v7
      React Router v7 (fs-routes)
      Compiler
    • Nuxt e Vue
    • Vite e Solid
    • SvelteKit
    • Vite e Preact
    • Vite e Vanilla JS
    • Vite e Lit
    • Angular 19 (Webpack)
      Analog
    • React CRA
    • React Native e Expo
    • Express.js
      NestJS
      Fastify
      Hono
      Adonis
    • Lynx e React
    Plugins
    • JSON
    • gettext (.po)
    Extensão VS Code
    Agente
    • Servidor MCP
    • Habilidades do agente
    Versões
    • v8
    • v7
    • v6
    Benchmark
    • Next.js
    • TanStack
    • Vue
    • Solid
    • Svelte
    Blog
    Faça uma pergunta
    1. Documentation
    2. Packages
    3. Intlayer
    4. GetLocalizedUrl
    Criação:2024-08-11Última atualização:2025-06-29
    Referência esta documentação ao seu assistente AI favorito
    ChatGPT
    Claude
    DeepSeek
    Google AI mode
    Gemini
    Perplexity
    Mistral
    Grok

    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ês

    Histórico de versões

    1. "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ês
    Editar esta documentação

    Se 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ção
    Copiar

    Copiar 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

    typescript
    Copiar código

    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

    typescript
    Copiar código

    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ês

    Locale Não Suportado

    typescript
    Copiar código

    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.
    • Locales Não Suportados:

      • Para locales não listados em locales, a função não aplica nenhum prefixo.

    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:

    tsx
    Copiar código

    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:

    typescript
    Copiar código

    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.

    Por que Intlayer?
    Alt+→

    Nesta página

      As discussões são anônimas e regularmente revisadas para resolver problemas comuns. Sinta-se à vontade para compartilhar ideias de funcionalidades, feedback sobre a documentação ou qualquer coisa relacionada ao Intlayer, usamos essas informações para moldar nosso roadmap e melhorar o produto.

      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ês
      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)
      getLocalizedUrl("/about", Locales.FRENCH); // Saída: "/fr/about"getLocalizedUrl("/about", Locales.SPANISH); // Saída: "/es/about"getLocalizedUrl("/about", Locales.ENGLISH); // Saída: "/about"