I18следующая загрузка перевода локально с помощью связанных файлов перевода
Есть ли способ загрузить переводы из файлов перевода json, прилагаемых к моим файлам js?
Мне нужно охватить только несколько языков, и из-за ограничений установка серверной конечной точки невозможна.
Я знаю о функции addResourceBundle, но мне это не удалось.
У меня есть файл перевода english.json, spanish.json
i18next.init();
i18next.addResourceBundle('en', 'translation', english.json);
i18next.addResourceBundle('es', 'translation', spanish.json);
Кажется, не работает.
1 ответ
Чтобы связать файлы перевода с кодом js, вам необходимо добавить их в дерево зависимостей вашего приложения.
Я предполагаю, что вы используете webpack, вам нужно определить загрузчик для импорта json ( json-loader).
i18next.init({
resources: {
'en-US': {translation: require('./en-us/translation.json')},
// ---------^ namespace
'nl-NL': {translation: require('./nl-nl/translation.json')},
},
fallbackLng: 'en-US',
ns: ['translation'],
defaultNS: 'translation',
});