ngx-translate

Бесплатно
Открытый исходный код

Сайт: ngx-translate.org

ngx-translate — это библиотека интернационализации (i18n) для приложений, построенных с использованием фреймворка Angular. Она была разработана как независимый модуль для управления переводами интерфейса и поддерживает загрузку языковых ресурсов в формате JSON, их организацию по ключам и динамическую смену языка в рантайме без необходимости перестроения приложения. Библиотека ориентирована на гибкость и простоту интеграции в существующие проекты Angular, предоставляя сервисы и пайпы для получения переводов в шаблонах и коде компонентов.

Основные концепции включают хранение переводов в виде наборов ключ–значение, загрузчики для получения ресурсов (например, по HTTP), механизм подстановки параметров и управление текущим языком приложения. ngx-translate позволяет подписываться на изменения языка, кешировать загруженные словари и комбинировать несколько источников переводов. В документации и сообществах библиотека описывается как удобное решение для разработчиков, которым требуется динамическая локализация без использования встроенных инструментов Angular, ориентированных на статическую компиляцию.

  • Загрузка переводов: поддержка загрузки JSON-файлов через HTTP и возможность использования собственных загрузчиков.
  • Динамическая смена языка: смена текущего языка в рантайме с автоматическим обновлением подписанных компонентов и пайпов.
  • Пайп и сервис: предоставление пайпа для использования в шаблонах и сервиса для получения переводов в коде TypeScript.
  • Параметры и интерполяция: подстановка параметров в строки перевода и форматирование динамических значений.
  • Фоллбэки: механизм резервных языков и значений при отсутствии перевода для текущего языка.
  • Мультимодульность: возможность объединять словари из разных модулей и контекстов приложения.
  • Кэширование и производительность: опции для кеширования загруженных словарей и снижения числа сетевых запросов.
  • Поддержка асинхронности: работа с асинхронными источниками переводов и интеграция с промисами/наблюдаемыми потоками.
  • Миграция и совместимость: инструменты и практики для миграции существующих переводов в формат библиотеки.
  • Сообщество и расширяемость: архитектура, позволяющая создавать плагины и кастомные адаптеры для специфичных потребностей локализации.
Подробнее