Как использовать response-i18next для изменения языка другим файлом javascript? - PullRequest
0 голосов
/ 28 января 2020

Я кодирую проект с открытым исходным кодом Покер-кодер в последнее время.

После перевода на английский язык 1011 * для вступления каждой карты, я не могу найти хороший способ переключить язык с помощью реакции -i18next.

В официальном документе React i18next каждый пример представляет собой простой файл json, записанный в public/locales/xx/translation.json, но я хочу загрузить конфигурацию языка различными JavaScript файлы в src похожи на эту файловую структуру:

# src/poker
.
├── index.ts
└── poker-coder
    ├── cn
    │   ├── club.ts
    │   ├── diamond.ts
    │   ├── heart.ts
    │   ├── joker.ts
    │   └── spade.ts
    └── en
        ├── club.ts
        ├── diamond.ts
        ├── heart.ts
        ├── joker.ts
        └── spade.ts

Что я могу сделать? Буду признателен, если кто-нибудь сможет мне помочь:)

Ответы [ 2 ]

1 голос
/ 28 января 2020

Вам нужно вызвать i18n.changeLanguage (значение); // значение может быть 'es' или 'en' в зависимости от языка, которым вы хотите быть на сайте. затем этот метод changeLanguage () будет вызывать файл конфигурации i18n, который будет далее вызывать ваш переведенный файл, в который вы поместили текст перевода.

0 голосов
/ 28 января 2020

В официальном документе React i18next каждый пример представляет собой простой файл json, написанный в public / locales / xx / translation. json, но я хочу загрузить конфигурацию языка различными JavaScript файлы

Уточним - вы хотите использовать какой-то пакет, но не так, как он работает? Все просто - просто раскошелитесь и измените свои потребности!

Не думаете ли вы, что что-то не так с вашим процессом?
Сначала вы должны проверить требования i18next, а затем подготовить перевод.

... но вам повезло ... i18next очень гибок

  1. для небольших проектов вы можете импортировать (жестко кодировать, компилировать) все свои переводы - документы метод из пункта 1b - просто импортируйте все файлы из любого места (sr c paths) - перекомпилируйте все приложение с изменениями перевода
  2. для отдельной загрузки во время выполнения, которое у вас есть *. 1033 * переводы файлов по общедоступному пути

Для преобразования файлов, необходимого во втором методе, вы можете использовать babel ( babel-plugin-i18next-extract ) но его настройка может быть сложнее.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...