ГлавнаяПесочницаВитринаПриложениеДокументБлог
    • 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+←
    Что такое интернационализация (i18n)?
    SEO и Интернационализация
    Руководство
    • i18n с помощью next-i18next
    • i18n с помощью next-intl
    Используйте Intlayer в вашем решении
    • Автоматизировать next-i18next
    • Автоматизировать react-i18next
    • Автоматизировать next-intl
    • Автоматизировать react-intl
    • Автоматизировать vue-i18n
    Сравнения
    • next-i18next vs next-intl vs Intlayer
    • react-i18next vs react-intl vs Intlayer
    Документация
    1. Blog
    2. Intlayer with next intl
    Creation:2025-01-02Last update:2025-10-29
    Watch the video tutorial

    This page has a video tutorial available.

    Ссылайтесь на этот документ на ваш любимый ассистент AI
    ChatGPT
    Claude
    DeepSeek
    Google AI mode
    Gemini
    Perplexity
    Mistral
    Grok

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

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

    1. Добавлен плагин loadJSON
      v7.0.601.11.2025
    2. Изменение на плагин syncJSON
      v7.0.029.10.2025

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

    Смотреть последнюю версию оригинального контента на английском
    Edit this doc

    If you have an idea for improving this documentation, please feel free to contribute by submitting a pull request on GitHub.

    GitHub link to the documentation
    Copy

    Copy doc Markdown to clipboard

    Как автоматизировать перевод JSON для next-intl с помощью Intlayer

    www.youtube.com

    Что такое Intlayer?

    Intlayer, это инновационная, открытая библиотека интернационализации, созданная для устранения недостатков традиционных решений i18n. Она предлагает современный подход к управлению контентом в приложениях Next.js.

    Смотрите конкретное сравнение с next-intl в нашем блоге next-i18next vs. next-intl vs. Intlayer.

    Почему стоит сочетать Intlayer с next-intl?

    Хотя Intlayer предоставляет отличное самостоятельное решение для i18n (см. наше руководство по интеграции с Next.js), вы можете захотеть объединить его с next-intl по нескольким причинам:

    1. Существующая кодовая база: У вас уже есть реализованный next-intl, и вы хотите постепенно перейти на улучшенный опыт разработчика с Intlayer.
    2. Требования наследия: Ваш проект требует совместимости с существующими плагинами или рабочими процессами next-intl.
    3. Знакомство команды: Ваша команда привыкла работать с next-intl, но хочет улучшить управление контентом.

    Для этого Intlayer может быть реализован как адаптер для next-intl, чтобы помочь автоматизировать ваши JSON-переводы в CLI или CI/CD пайплайнах, тестировать переводы и многое другое.

    Это руководство покажет вам, как использовать превосходную систему декларации контента Intlayer, сохраняя совместимость с next-intl.

    Содержание

    Пошаговое руководство по настройке Intlayer с next-intl

    Шаг 1: Установка зависимостей

    Установите необходимые пакеты:

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

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

    npm install intlayer @intlayer/sync-json-plugin --save-devnpx intlayer init

    Описание пакетов:

    • intlayer: Основная библиотека для управления интернационализацией, декларации контента и сборки
    • @intlayer/sync-json-plugin: Плагин для экспорта деклараций контента Intlayer в JSON-формат, совместимый с next-intl

    Шаг 2: Реализация плагина Intlayer для обёртки JSON

    Создайте файл конфигурации Intlayer для определения поддерживаемых локалей:

    Если вы также хотите экспортировать JSON-словари для next-intl, добавьте плагин syncJSON:

    intlayer.config.ts
    Копировать код

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

    import { Locales, type IntlayerConfig } from "intlayer";import { syncJSON } from "@intlayer/sync-json-plugin";const config: IntlayerConfig = {  internationalization: {    locales: [Locales.ENGLISH, Locales.FRENCH, Locales.SPANISH],    defaultLocale: Locales.ENGLISH,  },  plugins: [    syncJSON({      format: "icu",      source: ({ key, locale }) => `./messages/${locale}/${key}.json`,    }),  ],};export default config;

    Плагин syncJSON автоматически обернет JSON. Он будет читать и записывать JSON-файлы без изменения архитектуры контента.

    Если вы хотите, чтобы JSON сосуществовал с файлами декларации контента intlayer (.content файлы), Intlayer будет работать следующим образом:

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

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

    1. загрузит как JSON, так и файлы декларации контента и преобразует их в словарь intlayer.2. если возникают конфликты между JSON и файлами декларации контента, Intlayer выполнит слияние всех словарей. В зависимости от приоритета плагинов и файла декларации контента (все настраивается).

    Если изменения вносятся с помощью CLI для перевода JSON или через CMS, Intlayer обновит JSON-файл с новыми переводами.

    Для получения дополнительной информации о плагине syncJSON обратитесь к документации плагина syncJSON.

    Конфигурация Git

    Рекомендуется игнорировать автоматически сгенерированные файлы Intlayer:

    .gitignore
    Копировать код

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

    # Игнорировать файлы, сгенерированные Intlayer.intlayer

    Эти файлы могут быть восстановлены во время процесса сборки и не требуют добавления в систему контроля версий.

    Расширение VS Code

    Для улучшения опыта разработчика установите официальное расширение Intlayer для VS Code:

    Установить из VS Code Marketplace

    Автоматизировать react-i18next
    Автоматизировать react-intl
    Alt+→

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

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

      npm install intlayer @intlayer/sync-json-plugin --save-devnpx intlayer init
      import { Locales, type IntlayerConfig } from "intlayer";import { syncJSON } from "@intlayer/sync-json-plugin";const config: IntlayerConfig = {  internationalization: {    locales: [Locales.ENGLISH, Locales.FRENCH, Locales.SPANISH],    defaultLocale: Locales.ENGLISH,  },  plugins: [    syncJSON({      format: "icu",      source: ({ key, locale }) => `./messages/${locale}/${key}.json`,    }),  ],};export default config;
      1. загрузит как JSON, так и файлы декларации контента и преобразует их в словарь intlayer.2. если возникают конфликты между JSON и файлами декларации контента, Intlayer выполнит слияние всех словарей. В зависимости от приоритета плагинов и файла декларации контента (все настраивается).
      # Игнорировать файлы, сгенерированные Intlayer.intlayer