Задайте питання та отримайте підсумок документа, вказавши цю сторінку та обраного вами постачальника штучного інтелекту
Історія версій
- "Refactored to use options parameter with mode instead of prefixDefault"v7.1.016.11.2025
- "Init history"v5.5.1029.06.2025
Вміст цієї сторінки перекладено за допомогою штучного інтелекту.
Переглянути останню версію оригінального вмісту англійськоюЯкщо у вас є ідея щодо покращення цієї документації, будь ласка, долучіться, надіславши pull request на GitHub.
Посилання на документацію на GitHubСкопіювати документацію у форматі Markdown в буфер обміну
Документація: функція getMultilingualUrls в intlayer
Опис
Функція getMultilingualUrls генерує відображення багатомовних URL, додаючи префікс локалі до заданого URL для кожної підтримуваної локалі. Вона може обробляти як абсолютні, так і відносні URL, застосовуючи відповідний префікс локалі на основі наданої конфігурації або значень за замовчуванням.
Ключові особливості:
- Потрібен лише один параметр:
url - Необов'язковий об'єкт
optionsз полямиlocales,defaultLocaleтаmode - Використовує конфігурацію інтернаціоналізації вашого проєкту за замовчуванням
- Підтримує кілька режимів маршрутизації:
prefix-no-default,prefix-all,no-prefixтаsearch-params - Повертає об'єкт-мапу, де ключами є всі локалі, а значеннями, відповідні URL
Підпис функції
Параметри
Обов'язкові параметри
url: string- Опис: Початковий рядок URL, до якого будуть додані префікси локалей.
- Тип:
string - Обов'язково: Так
Необов'язкові параметри
options?: object- Опис: Об'єкт конфігурації для поведінки локалізації URL.
- Тип:
object Обов'язково: Ні (Необов'язково)
options.locales?: Locales[]- Опис: Масив підтримуваних локалей. Якщо не вказано, використовуються налаштовані локалі з конфігурації вашого проєкту.
- Тип:
Locales[] - За замовчуванням:
Конфігурація проєкту
options.defaultLocale?: Locales- Опис: Мова за замовчуванням для додатка. Якщо не вказано, використовується мова за замовчуванням, налаштована у конфігурації вашого проєкту.
- Тип:
Locales - За замовчуванням:
Конфігурація проєкту
options.mode?: 'prefix-no-default' | 'prefix-all' | 'no-prefix' | 'search-params'- Опис: Режим маршрутизації URL для обробки локалі. Якщо не вказано, використовується режим, налаштований у конфігурації вашого проєкту.
- Тип:
'prefix-no-default' | 'prefix-all' | 'no-prefix' | 'search-params' - За замовчуванням:
Конфігурація проєкту - Режими:
prefix-no-default: Без префікса для мови за замовчуванням, префікс для всіх іншихprefix-all: Префікс для всіх мов, включно зі мовою за замовчуваннямno-prefix: Немає префікса локалі в URLsearch-params: Використовувати параметри запиту для локалі (наприклад,?locale=fr)
Повертає
- Тип:
StrictModeLocaleMap<string> - Опис: Об'єкт, який зіставляє кожну локаль з відповідним багатомовним URL.
Приклад використання
Базове використання (використовує конфігурацію проєкту)
Відносні URL з опціями
Абсолютні URL-адреси
Різні режими маршрутизації
Крайні випадки
Відсутній сегмент локалі:
- Функція видаляє будь-який існуючий сегмент локалі з URL перед генерацією багатомовних відповідностей.
Локаль за замовчуванням:
- Коли
modeдорівнює'prefix-no-default', функція не додає префікс до URL для локалі за замовчуванням. - Коли
modeдорівнює'prefix-all', функція додає префікси для всіх локалей, включно з локаллю за замовчуванням.
- Коли
Непідтримувані локалі:
- Лише локалі, вказані в масиві locales, враховуються під час генерації URL.
Режими маршрутизації:
'prefix-no-default': для локалі за замовчуванням префікс відсутній, для інших, є (наприклад,/dashboard,/fr/dashboard)'prefix-all': усі локалі мають префікси (наприклад,/en/dashboard,/fr/dashboard)'no-prefix': Немає префіксів локалі в URL (для всіх локалей повертається той самий URL)'search-params': Локаль вказується через параметр запиту (наприклад,/dashboard?locale=fr)
Використання в застосунках
У багатомовному застосунку налаштування параметрів інтернаціоналізації через locales та defaultLocale є критично важливим для забезпечення відображення правильної мови. Нижче наведено приклад того, як getMultilingualUrls може бути використана в конфігурації застосунку:
Показана вище конфігурація гарантує, що додаток розпізнає ENGLISH, FRENCH і SPANISH як підтримувані мови та використовує ENGLISH як мову за замовчуванням.
З цією конфігурацією функція getMultilingualUrls може динамічно генерувати відповідності багатомовних URL на основі підтримуваних у додатку локалей:
Інтегруючи getMultilingualUrls, розробники можуть підтримувати узгоджену структуру URL для кількох мов, що покращує як досвід користувача, так і SEO.