ГоловнаПісочницяВітринаДодатокДокументаціяБлог
    • 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. Next intlayer
    4. UseLocale
    Дата створення:2025-08-23Останнє оновлення:2026-01-26
    Надішліть цей документ вашому улюбленому AI-асистенту
    ChatGPT
    Claude
    DeepSeek
    Google AI mode
    Gemini
    Perplexity
    Mistral
    Grok

    Задайте питання та отримайте підсумок документа, вказавши цю сторінку та обраного вами постачальника штучного інтелекту

    Історія версій

    1. "Встановлено `onLocaleChange` за замовчуванням у `replace`"
      v8.0.026.01.2026
    2. "Додано документацію для хуку `useLocale` з опцією `onLocaleChange`"
      v6.2.009.10.2025
    3. "Ініціалізація історії"
      v5.5.1029.06.2025

    Вміст цієї сторінки перекладено за допомогою штучного інтелекту.

    Переглянути останню версію оригінального вмісту англійською
    Редагувати цей документ

    Якщо у вас є ідея щодо покращення цієї документації, будь ласка, долучіться, надіславши pull request на GitHub.

    Посилання на документацію на GitHub
    Копіювати

    Скопіювати документацію у форматі Markdown в буфер обміну

    Інтеграція з Next.js: документація хуку useLocale для next-intlayer

    This section offers detailed documentation on the useLocale hook tailored for Next.js applications within the next-intlayer library. It is designed to handle locale changes and routing efficiently.

    Імпорт useLocale у Next.js

    Щоб використовувати хук useLocale у вашому Next.js застосунку, імпортуйте його, як показано нижче:

    javascript
    Копіювати код

    Скопіюйте код у буфер обміну

    import { useLocale } from "next-intlayer"; // Використовується для керування локалями та маршрутизацією в Next.js

    Використання

    Ось як реалізувати хук useLocale у компоненті Next.js:

    src/components/LocaleSwitcher.tsx
    Копіювати код

    Скопіюйте код у буфер обміну

    "use client";
    
    import type { FC } from "react";
    import { Locales } from "intlayer";
    import { useLocale } from "next-intlayer";
    
    const LocaleSwitcher: FC = () => {
      const { locale, defaultLocale, availableLocales, setLocale } = useLocale();
    
      return (
        <div>
          <h1>Поточна локаль: {locale}</h1>
          <p>Локаль за замовчуванням: {defaultLocale}</p>
          <select value={locale} onChange={(e) => setLocale(e.target.value)}>
            {availableLocales.map((loc) => (
              <option key={loc} value={loc}>
                {loc}
              </option>
            ))}
          </select>
        </div>
      );
    };

    Параметри

    Хук useLocale приймає такі параметри:

    • onLocaleChange: Рядок, який визначає, як має оновлюватися URL під час зміни локалі. Може бути "replace", "push" або "none".

      Розглянемо приклад:

      1. Ви перебуваєте на /fr/home
      2. Ви переходите на /fr/about
      3. Ви переключаєтесь на /es/about
      4. Ви натискаєте кнопку "назад" у браузері

      Поведінка відрізнятиметься залежно від значення onLocaleChange:

      • "replace" (за замовчуванням): Замінює поточний URL на новий локалізований URL і встановлює cookie. -> Кнопка «назад» перейде на /es/home
      • "push": Додає новий локалізований URL в історію браузера та встановлює cookie. -> Кнопка «назад» перейде на /fr/about
      • "none": Оновлює лише локаль у клієнтському контексті та встановлює cookie, не змінюючи URL. -> Кнопка «назад» перейде на /fr/home
      • (locale) => void: Встановлює cookie і викликає кастомну функцію, яка буде запущена при зміні локалі.

        Опція undefined, поведінка за замовчуванням: ми рекомендуємо використовувати компонент Link для навігації на нову локаль. Приклад:

        tsx
        Копіювати код

        Скопіюйте код у буфер обміну

        <Link href="/es/about" replace>  Про нас</Link>

    Повернуті значення

    Коли ви викликаєте хук useLocale, він повертає об'єкт, що містить наступні властивості:

    • locale: Поточна локаль, як встановлено в контексті React.
    • defaultLocale: Основна локаль, визначена в конфігурації.
    • availableLocales: Список усіх доступних локалей, визначених у конфігурації.
    • setLocale: Функція для зміни локалі застосунку та відповідного оновлення URL. Вона враховує правила префіксів, чи додавати локаль у шлях залежно від конфігурації. Використовує useRouter з next/navigation для навігаційних функцій, таких як push і refresh.
    • pathWithoutLocale: обчислювана властивість, яка повертає шлях без локалі. Корисна для порівняння URL-адрес. Наприклад, якщо поточна локаль, fr, а URL, fr/my_path, то шлях без локалі буде /my_path. Використовує usePathname з next/navigation для отримання поточного шляху.

    Висновок

    Хук useLocale з next-intlayer, це ключовий інструмент для керування локалями в додатках Next.js. Він пропонує інтегрований підхід для адаптації вашого застосунку до кількох локалей, безшовно обробляючи збереження локалі, управління станом та модифікації URL.

    Чому Intlayer?
    Alt+→

    На цій сторінці

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

      import { useLocale } from "next-intlayer"; // Використовується для керування локалями та маршрутизацією в Next.js
      <Link href="/es/about" replace>  Про нас</Link>