Спросите свой вопрос и получите сводку документа, используя эту страницу и выбранного вами поставщика AI
История версий
- "Обновление использования API useIntlayer в Solid для прямого доступа к свойствам"v8.9.004.05.2026
- "Добавить команду init"v7.5.930.12.2025
- "Обновление для интеграции с Astro, конфигурация, использование"v6.2.003.10.2025
Содержимое этой страницы было переведено с помощью ИИ.
Смотреть последнюю версию оригинального контента на английскомЕсли у вас есть идея по улучшению этой документации, не стесняйтесь внести свой вклад, подав запрос на вытягивание на GitHub.
Ссылка на документацию GitHubКопировать Markdown документа в буфер обмена
Переведите ваш сайт Astro с помощью Intlayer | Интернационализация (i18n)
Содержание
Почему Intlayer лучше альтернатив?
По сравнению с основными решениями, такими как astro-i18n или i18next, Intlayer представляет собой решение со встроенными оптимизациями, такими как:
Intlayer оптимизирован для идеальной работы с Astro, предлагая многоязычную маршрутизацию, карту сайта и все функции, необходимые для масштабирования интернационализации (i18n).
Вместо загрузки огромных файлов JSON на свои страницы загружайте только необходимый контент. Intlayer помогает уменьшить размер бандла и страниц до 50 %.
Определение области содержимого вашего приложения облегчает обслуживание крупномасштабных приложений. Вы можете дублировать или удалить отдельную папку функций, не утруждав себя мысленным бременем проверки всей кодовой базы контента. Кроме того, Intlayer полностью типизирован, что обеспечивает точность вашего контента.
Совместное размещение контента уменьшает контекст, необходимый для моделей большого языка (LLM). Intlayer также поставляется с набором инструментов, таких как CLI для проверки отсутствия переводов,LSP, MCP, и навыки агента, чтобы сделать работу разработчика (DX) еще более удобной для агентов ИИ.
Используйте автоматизацию для перевода в своем конвейере CI/CD, используя LLM по вашему выбору за счет вашего поставщика ИИ. Intlayer также предлагает компилятор для автоматизации извлечения контента, а также веб-платформу, которая помогает переводить в фоновом режиме.
Подключение больших файлов JSON к компонентам может привести к проблемам с производительностью и реактивностью. Intlayer оптимизирует загрузку контента во время сборки (build time).
Intlayer — это больше, чем просто решение i18n. Он предоставляет автономный визуальный редактор и полный CMS, чтобы помочь вам управлять многоязычным контентом в реальном времени, упрощая сотрудничество с переводчиками, копирайтерами и другими членами команды. Контент может храниться локально и/или удаленно.
Пошаговое руководство по настройке Intlayer в Astro
Посмотреть Шаблон приложения на GitHub.
Установка зависимостей
Установите необходимые пакеты с помощью вашего менеджера пакетов:
bashКопировать кодКопировать код в буфер обмена
intlayer Основной пакет, предоставляющий инструменты интернационализации для управления конфигурацией, переводами, объявлением контента, транспиляцией и командами CLI.
astro-intlayer Включает плагин интеграции для Astro для интеграции Intlayer с бандлером Vite, а также промежуточное ПО (middleware) для определения предпочтительной локали пользователя, управления куки и обработки перенаправлений URL.
Настройка вашего проекта
Создайте конфигурационный файл для настройки языков вашего приложения:
intlayer.config.tsКопировать кодКопировать код в буфер обмена
Через этот конфигурационный файл вы можете настроить локализованные URL, перенаправления middleware, названия куки, расположение и расширение ваших объявлений контента, отключить логи Intlayer в консоли и многое другое. Полный список доступных параметров см. в документации по конфигурации.
Интеграция Intlayer в конфигурацию Astro
Добавьте плагин intlayer в вашу конфигурацию.
astro.config.tsКопировать кодКопировать код в буфер обмена
Плагин интеграции
intlayer()используется для интеграции Intlayer с Astro. Он обеспечивает сборку файлов объявления контента и отслеживает их изменения в режиме разработки. Он определяет переменные окружения Intlayer внутри приложения Astro. Кроме того, он предоставляет псевдонимы (aliases) для оптимизации производительности.Объявление контента
Создавайте и управляйте объявлениями контента для хранения переводов:
src/app.content.tsxКопировать кодКопировать код в буфер обмена
Ваши объявления контента могут быть определены в любом месте вашего приложения, если они включены в каталог
contentDir(по умолчанию./src) и соответствуют расширению файла объявления контента (по умолчанию.content.{json,ts,tsx,js,jsx,mjs,cjs,md,mdx,yaml,yml}).Более подробную информацию см. в документации по объявлению контента.
Использование контента в Astro
Вы можете использовать словари напрямую в файлах
.astro, используя основные хелперы, экспортируемые изintlayer.src/pages/index.astroКопировать кодКопировать код в буфер обмена
Локализованная маршрутизация
Создайте динамический сегмент маршрута для обслуживания локализованных страниц, например
src/pages/[locale]/index.astro:src/pages/[locale]/index.astroКопировать кодКопировать код в буфер обмена
Интеграция Astro добавляет middleware Vite во время разработки, которое помогает с маршрутизацией, учитывающей язык, и определениями окружения. Вы по-прежнему можете создавать ссылки между языками, используя собственную логику или вспомогательные функции, такие как
getLocalizedUrlизintlayer.Продолжайте использовать ваш любимый фреймворк
Продолжайте использовать ваш любимый фреймворк для создания вашего приложения.
- Intlayer + React: Intlayer с React
- Intlayer + Vue: Intlayer с Vue
- Intlayer + Svelte: Intlayer со Svelte
- Intlayer + Solid: Intlayer с Solid
- Intlayer + Preact: Intlayer с Preact
Извлечение содержимого ваших компонентов
НеобязательноЕсли у вас есть существующая кодовая база, преобразование тысяч файлов может занять много времени.
Чтобы упростить этот процесс, Intlayer предлагает компилятор / экстрактор для преобразования ваших компонентов и извлечения содержимого.
Чтобы настроить его, вы можете добавить раздел
compilerв ваш файлintlayer.config.ts:intlayer.config.tsКопировать кодКопировать код в буфер обмена
import { type IntlayerConfig } from "intlayer"; const config: IntlayerConfig = { // ... Остальная часть вашей конфигурации compiler: { /** * Указывает, должен ли быть включен компилятор. */ enabled: true, /** * Определяет путь к выходным файлам */ output: ({ fileName, extension }) => `./${fileName}${extension}`, /** * Указывает, должны ли компоненты сохраняться после преобразования. Таким образом, компилятор можно запустить только один раз для преобразования приложения, а затем удалить. */ saveComponents: false, /** * Префикс ключа словаря */ dictionaryKeyPrefix: "", }, }; export default config;Запустите экстрактор для преобразования компонентов и извлечения содержимого
bashКопировать кодКопировать код в буфер обмена
Настройка TypeScript
Intlayer использует расширение модулей (module augmentation), чтобы воспользоваться преимуществами TypeScript и сделать вашу кодовую базу более надежной.


Убедитесь, что ваша конфигурация TypeScript включает автогенерируемые типы.
Копировать код в буфер обмена
Настройка Git
Рекомендуется игнорировать файлы, созданные Intlayer. Это позволяет избежать их добавления в ваш Git-репозиторий.
Для этого вы можете добавить следующие инструкции в ваш файл .gitignore:
Копировать код в буфер обмена
Расширение для VS Code
Для улучшения процесса разработки с использованием Intlayer вы можете установить официальное расширение Intlayer для VS Code.
Установить из VS Code Marketplace
Это расширение предоставляет:
- Автодополнение для ключей перевода.
- Обнаружение ошибок в реальном времени для отсутствующих переводов.
- Встроенный предпросмотр переведенного контента.
- Быстрые действия для легкого создания и обновления переводов.
Более подробную информацию об использовании расширения см. в документации по расширению Intlayer для VS Code.
Дальнейшие шаги
Вы также можете внедрить визуальный редактор или вынести ваш контент во внешнюю CMS.