@minsize/plugin-i18n v1.0.1
@minsize/plugin-i18n
Плагин @minsize/plugin-i18n
предоставляет возможности интернационализации (i18n) для вашего приложения, построенного на @minsize/core
. Он позволяет легко управлять языковыми настройками и переводами, обеспечивая поддержку многоязычности.
Установка
Перед началом работы убедитесь, что у вас установлено ядро @minsize/core
и другие необходимые зависимости.
Установка через npm
npm install @minsize/core @minsize/plugin-i18n
Использование
Регистрация плагина
Чтобы использовать плагин, зарегистрируйте его в вашем приложении:
import mcore from '@minsize/core';
import i18nPlugin from '@minsize/plugin-i18n';
// Пример передачи объектов Props и регистрации плагина
const props = {
signal: [/* геттер и сеттер текущего языка */],
default: 'en', // Язык по умолчанию
dictionaries: {
en: {...}, // Словарь для английского
es: {...}, // Словарь для испанского (пример)
}
};
mcore.register([i18nPlugin(props)]);
Глобальные функции i18n
Плагин @minsize/plugin-i18n
добавляет в глобальное пространство имен объект i18n
, который предоставляет следующие методы:
i18n.setLanguage(langCode: string)
: Устанавливает текущий язык. Если язык не поддерживается, устанавливается английский язык ('en').i18n.getLanguage()
: Возвращает код текущего языка.i18n.get(path: string, ...args)
: Получает перевод для заданного пути в текущем языке. Поддерживает подстановку аргументов.i18n.getByCode(langCode: string, path: string, ...args)
: Получает перевод для заданного языка, пути и аргументов.
Пример использования
// Установите язык на испанский
i18n.setLanguage('es');
// Получите перевод для ключа 'greeting'
console.log(i18n.get('greeting')); // "¡Hola!"
// Получите перевод для ключа 'greeting' на английском
console.log(i18n.getByCode('en', 'greeting')); // "Hello!"
Преимущества
- Удобство использования: Легко переключайтесь между различными языками.
- Гибкость: Добавляйте и настраивайте словари для любого количества языков.
- Поддержка шаблонов: Используйте подстановку аргументов в строках перевода.
Заключение
Плагин @minsize/plugin-i18n
помогает вам легко интегрировать многоязыковую поддержку в ваше приложение на базе @minsize/core
. Он обеспечивает гибкость и простоту использования, необходимые для совместной работы над проектами, требующими обширной поддержки языков. Почувствуйте свободу добавления новых языков и модификации существующих переводов в любое время.