Создание:2026-01-21Последнее обновление:2026-01-21

    Пакет next-intlayer

    Пакет next-intlayer предоставляет необходимые инструменты для интеграции Intlayer в приложения на Next.js. Он поддерживает как App Router, так и Page Router, включая middleware для маршрутизации на основе локали.

    Установка

    npm install next-intlayer

    Экспорты

    Промежуточное ПО (Middleware)

    Импорт:

    import "next-intlayer/middleware";
    Функция Описание Связанный документ
    intlayerMiddleware Middleware для Next.js, обрабатывающий маршрутизацию и редиректы на основе локали. Определяет локаль по заголовкам/куки и выполняет перенаправление на соответствующий путь локали. intlayerMiddleware

    Помощники конфигурации

    Импорт:

    import "next-intlayer/server";
    Функция Описание Связанный документ
    withIntlayer Асинхронный хелпер для обёртывания конфигурации Next.js, обеспечивающий подготовку словарей Intlayer до сборки. Подготавливает файлы контента и настраивает плагины webpack/SWC. -
    withIntlayerSync Синхронный хелпер для обёртывания конфигурации Next.js, подходит для случаев, когда использование async невозможно или нежелательно. Не подготавливает словари при запуске сервера. -

    Провайдеры

    Импорт:

    import "next-intlayer";

    или

    import "next-intlayer/server";
    Компонент Описание Связанный документ
    IntlayerClientProvider Провайдер для клиентских компонентов в Next.js App Router. Оборачивает IntlayerProvider из react-intlayer. -
    IntlayerServerProvider Провайдер для серверных компонентов в Next.js (App Router). Предоставляет контекст локали на сервере. -
    IntlayerServer Серверная оболочка для контента Intlayer в App Router. Обеспечивает корректную обработку локалей в Server Components. -

    Хуки (клиентская часть)

    Импорт:

    import "next-intlayer";

    Ре-экспортирует большинство хуков из react-intlayer.

    Хук Описание Связанный документ
    useIntlayer Клиентский хук, который выбирает один dictionary по его ключу и возвращает его содержимое. Использует locale из контекста, если он не указан. useIntlayer
    useDictionary Хук, который трансформирует объект dictionary и возвращает содержимое для текущей locale. Обрабатывает переводы t(), перечисления и т.д. useDictionary
    useDictionaryAsync Hook, который обрабатывает асинхронные словари. Принимает карту словарей на основе Promise и разрешает её для текущей локали. -
    useDictionaryDynamic Hook, который обрабатывает динамические словари, загружаемые по ключу. Внутри использует React Suspense для состояний загрузки. -
    useLocale Хук на стороне клиента для получения текущей локали и функции для её установки. Улучшен для Next.js App Router с поддержкой навигации. useLocale
    useRewriteURL Клиентский хук для управления правилами переписывания URL. Автоматически обновляет URL, если существует более «читаемое» локализованное правило переписывания. useRewriteURL
    useLocalePageRouter Хук, специфичный для Next.js Page Router, для управления локалью. Обрабатывает перенаправления и перезагрузку страницы при изменении локали. -
    useI18n Хук, который предоставляет функцию перевода t() для доступа к вложенному содержимому по ключу. Повторяет паттерн i18next/next-intl. useI18n
    useIntl Хук, который предоставляет привязанный к локали объект Intl. Автоматически подставляет текущую локаль и использует оптимизированное кэширование. -
    useLoadDynamic Хук для загрузки динамических словарей с использованием React Suspense. Принимает ключ и Promise, кеширует результаты. -

    Функции (на стороне сервера)

    Импорт:

    import "next-intlayer/server";
    Функция Описание Связанная документация
    t Серверная версия функции перевода для Next.js App Router. Возвращает перевод мультиязычного контента для локали сервера. translation
    getLocale Вспомогательная функция для извлечения текущей локали из заголовков и куки Next.js. Предназначена для Server Components, Server Actions или Route Handlers. -
    generateStaticParams Генерирует статические параметры для динамических маршрутов Next.js на основе настроенных локалей. Возвращает массив объектов локалей для предварительного рендеринга. -
    locale Функция для получения или установки локали в серверном контексте (App Router). Обеспечивает управление локалью в Server Components. -

    Типы

    Импорт:

    import "next-intlayer";
    Тип Описание
    NextPageIntlayer Тип для страниц Next.js с поддержкой Intlayer. Обобщённый тип, включающий параметр locale.
    Next14PageIntlayer Тип для страниц Next.js 14 с поддержкой Intlayer.
    Next15PageIntlayer Тип для страниц Next.js 15 с поддержкой Intlayer.
    NextLayoutIntlayer Тип для layouts Next.js с поддержкой Intlayer. Обобщённый тип, включающий параметр locale.
    Next14LayoutIntlayer Тип для layouts Next.js 14 с поддержкой Intlayer.
    Next15LayoutIntlayer Тип для layouts Next.js 15 с поддержкой Intlayer.
    LocalParams Тип для параметров маршрута Next.js с локалью. Объект со свойством locale.
    LocalPromiseParams Тип для параметров маршрута Next.js с локалью (асинхронная версия). Promise, который разрешается в объект со свойством locale.