1.0.1 • Published 6 months ago

@minsize/plugin-i18n v1.0.1

Weekly downloads
-
License
MIT
Repository
github
Last release
6 months ago

@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. Он обеспечивает гибкость и простоту использования, необходимые для совместной работы над проектами, требующими обширной поддержки языков. Почувствуйте свободу добавления новых языков и модификации существующих переводов в любое время.

1.0.1

6 months ago

1.0.0

6 months ago