ГлавнаяПесочницаВитринаПриложениеДокументБлог
    • Englishанглийский
      EN
    • русскийрусский
      RU
    • 日本語японский
      JA
    • françaisфранцузский
      FR
    • 한국어корейский
      KO
    • 中文китайский
      ZH
    • españolиспанский
      ES
    • Deutschнемецкий
      DE
    • العربيةарабский
      AR
    • italianoитальянский
      IT
    • British Englishбританский английский
      EN-GB
    • portuguêsпортугальский
      PT
    • हिन्दीхинди
      HI
    • Türkçeтурецкий
      TR
    • polskiпольский
      PL
    • Indonesiaиндонезийский
      ID
    • Tiếng Việtвьетнамский
      VI
    • українськаукраинский
      UK
    /
    Фильтровать документы по фреймворку
    Alt+←
    Почему Intlayer?
    Начать
    Концепция
    • Как работает Intlayer
    • Конфигурация
    • TestFillBuildWatchExtractLoginPushPullConfigurationListVersionEditorLiveDebugDoc ReviewDoc TranslateSDK
    • Визуальный редактор
    • CMS
    • Интеграция CI/CD
    • ПереводМножественное числоПеречислениеУсловиеПолВставкаФайлВложенностьMarkdownHTMLПолучение функции
    • Файл для каждой локали
    • Компилятор
    • Автозаполнение
    • Тестирование
    • Оптимизация пакета
    Окружающая среда
    • Next.js 14 и App Router
      Next.js 15
      Next.js без locale URL
      Next.js и Page Router
      Compiler
    • Tanstack Start Solid
    • Astro и React
      Astro и Svelte
      Astro и Vue
      Astro и Solid
      Astro и Preact
      Astro и Lit
      Astro и Vanilla JS
    • React Router v7
      React Router v7 (fs-routes)
      Compiler
    • Nuxt и Vue
    • Vite и Solid
    • SvelteKit
    • Vite и Preact
    • Vite и Vanilla JS
    • Vite и Lit
    • Angular 19 (Webpack)
      Analog
    • React CRA
    • React Native и Expo
    • Express.js
      NestJS
      Fastify
      Hono
      Adonis
    • Lynx и React
    Plugins
    • JSON
    • gettext (.po)
    Расширение VS Code
    Агент
    • Сервер MCP
    • Навики агента
    Релизы
    • v8
    • v7
    • v6
    Бенчмарк
    • Next.js
    • TanStack
    • Vue
    • Solid
    • Svelte
    Блог
    Задать вопрос
    1. Documentation
    2. Packages
    3. Intlayer
    4. GetLocalizedUrl
    Создание:2024-08-11Последнее обновление:2025-06-29
    Ссылайтесь на этот документ на ваш любимый ассистент AI
    ChatGPT
    Claude
    DeepSeek
    Google AI mode
    Gemini
    Perplexity
    Mistral
    Grok

    Спросите свой вопрос и получите сводку документа, используя эту страницу и выбранного вами поставщика AI

    Этот документ устарел, базовая версия была обновлена 16 ноября 2025 г..

    Перейти к английской документации

    История версий

    1. "Инициализация истории"
      v5.5.1029.06.2025

    Содержимое этой страницы было переведено с помощью ИИ.

    Смотреть последнюю версию оригинального контента на английском
    Изменить эту документацию

    Если у вас есть идея по улучшению этой документации, не стесняйтесь внести свой вклад, подав запрос на вытягивание на GitHub.

    Ссылка на документацию GitHub
    Копировать

    Копировать Markdown документа в буфер обмена

    Документация: функция getLocalizedUrl в intlayer

    Описание

    Функция getLocalizedUrl генерирует локализованный URL, добавляя в начало заданного URL указанный локаль. Она обрабатывает как абсолютные, так и относительные URL, обеспечивая применение правильного префикса локали в соответствии с конфигурацией.


    Параметры

    • url: string

      • Описание: Исходная строка URL, к которой будет добавлен префикс локали.
      • Тип: string
    • currentLocale: Locales

      • Описание: Текущая локаль, для которой локализуется URL.
      • Тип: Locales
    • locales: Locales[]

      • Описание: Необязательный массив поддерживаемых локалей. По умолчанию используются локали, настроенные в проекте.
      • Тип: Locales[]
      • По умолчанию: Конфигурация проекта
    • defaultLocale: Locales

      • Описание: Локаль по умолчанию для приложения. По умолчанию используется локаль по умолчанию, настроенная в проекте.
      • Тип: Locales
      • По умолчанию: Конфигурация проекта
    • prefixDefault: boolean

      • Описание: Нужно ли добавлять префикс для локали по умолчанию. По умолчанию используется значение, настроенное в проекте.
      • Тип: boolean
      • По умолчанию: Конфигурация проекта

    Возвращает

    • Тип: string
    • Описание: Локализованный URL для указанной локали.

    Пример использования

    Относительные URL

    typescript
    Копировать код

    Копировать код в буфер обмена

    import { getLocalizedUrl, Locales } from "intlayer";
    
    getLocalizedUrl(
      "/about",
      Locales.FRENCH,
      [Locales.ENGLISH, Locales.FRENCH],
      Locales.ENGLISH,
      false
    );
    
    // Вывод: "/fr/about" для французской локали
    // Вывод: "/about" для локали по умолчанию (английский)

    Абсолютные URL

    typescript
    Копировать код

    Копировать код в буфер обмена

    getLocalizedUrl(  "https://example.com/about",  Locales.FRENCH, // Текущая локаль  [Locales.ENGLISH, Locales.FRENCH], // Поддерживаемые локали  Locales.ENGLISH, // Локаль по умолчанию  false // Добавлять префикс для локали по умолчанию); // Вывод: "https://example.com/fr/about" для французской локалиgetLocalizedUrl(  "https://example.com/about",  Locales.ENGLISH, // Текущая локаль  [Locales.ENGLISH, Locales.FRENCH], // Поддерживаемые локали  Locales.ENGLISH, // Локаль по умолчанию  false // Добавлять префикс для локали по умолчанию); // Вывод: "https://example.com/about" для английской локалиgetLocalizedUrl(  "https://example.com/about",  Locales.ENGLISH, // Текущая локаль  [Locales.ENGLISH, Locales.FRENCH], // Поддерживаемые локали  Locales.ENGLISH, // Локаль по умолчанию  true // Добавлять префикс для локали по умолчанию); // Вывод: "https://example.com/en/about" для английской локали

    Неподдерживаемая локаль

    typescript
    Копировать код

    Копировать код в буфер обмена

    getLocalizedUrl(  "/about",  Locales.ITALIAN, // Текущая локаль  [Locales.ENGLISH, Locales.FRENCH], // Поддерживаемые локали  Locales.ENGLISH // Локаль по умолчанию); // Вывод: "/about" (префикс не применяется для неподдерживаемой локали)

    Особые случаи

    • Отсутствие сегмента локали:

      • Если URL не содержит сегмента локали, функция безопасно добавляет соответствующую локаль в префикс.
    • Локаль по умолчанию:

      • Когда prefixDefault равно false, функция не добавляет префикс для URL локали по умолчанию.
    • Неподдерживаемые локали:

      • Для локалей, не указанных в списке locales, функция не применяет никакого префикса.

    Использование в приложениях

    В многоязычном приложении настройка параметров интернационализации с помощью locales и defaultLocale имеет решающее значение для обеспечения отображения правильного языка. Ниже приведён пример того, как функция getLocalizedUrl может использоваться в настройках приложения:

    tsx
    Копировать код

    Копировать код в буфер обмена

    import { Locales, type IntlayerConfig } from "intlayer";
    
    // Конфигурация поддерживаемых локалей и локали по умолчанию
    export default {
      internationalization: {
        locales: [Locales.ENGLISH, Locales.FRENCH, Locales.SPANISH],
        defaultLocale: Locales.ENGLISH,
      },
    } satisfies IntlayerConfig;
    
    export default config;

    Данная конфигурация гарантирует, что приложение распознаёт ENGLISH, FRENCH и SPANISH как поддерживаемые языки и использует ENGLISH в качестве языка по умолчанию.

    Используя эту конфигурацию, функция getLocalizedUrl может динамически генерировать локализованные URL-адреса в зависимости от предпочтений языка пользователя:

    typescript
    Копировать код

    Копировать код в буфер обмена

    getLocalizedUrl("/about", Locales.FRENCH); // Вывод: "/fr/about"getLocalizedUrl("/about", Locales.SPANISH); // Вывод: "/es/about"getLocalizedUrl("/about", Locales.ENGLISH); // Вывод: "/about"

    Интегрируя getLocalizedUrl, разработчики могут поддерживать единообразную структуру URL на нескольких языках, улучшая как пользовательский опыт, так и SEO.

    Почему Intlayer?
    Alt+→

    На этой странице

      Обсуждения анонимны и регулярно просматриваются для решения распространённых проблем. Не стесняйтесь делиться идеями функций, отзывами о документации или чем-либо, связанным с Intlayer, мы используем эту информацию для формирования нашей дорожной карты и улучшения продукта.

      getLocalizedUrl(  "https://example.com/about",  Locales.FRENCH, // Текущая локаль  [Locales.ENGLISH, Locales.FRENCH], // Поддерживаемые локали  Locales.ENGLISH, // Локаль по умолчанию  false // Добавлять префикс для локали по умолчанию); // Вывод: "https://example.com/fr/about" для французской локалиgetLocalizedUrl(  "https://example.com/about",  Locales.ENGLISH, // Текущая локаль  [Locales.ENGLISH, Locales.FRENCH], // Поддерживаемые локали  Locales.ENGLISH, // Локаль по умолчанию  false // Добавлять префикс для локали по умолчанию); // Вывод: "https://example.com/about" для английской локалиgetLocalizedUrl(  "https://example.com/about",  Locales.ENGLISH, // Текущая локаль  [Locales.ENGLISH, Locales.FRENCH], // Поддерживаемые локали  Locales.ENGLISH, // Локаль по умолчанию  true // Добавлять префикс для локали по умолчанию); // Вывод: "https://example.com/en/about" для английской локали
      getLocalizedUrl(  "/about",  Locales.ITALIAN, // Текущая локаль  [Locales.ENGLISH, Locales.FRENCH], // Поддерживаемые локали  Locales.ENGLISH // Локаль по умолчанию); // Вывод: "/about" (префикс не применяется для неподдерживаемой локали)
      getLocalizedUrl("/about", Locales.FRENCH); // Вывод: "/fr/about"getLocalizedUrl("/about", Locales.SPANISH); // Вывод: "/es/about"getLocalizedUrl("/about", Locales.ENGLISH); // Вывод: "/about"