i18next - 从 JSON 文件加载翻译

i18next - Loading translations from a JSON file

我正在尝试使用 Node.js 上的 i18next 库从 JSON 文件加载翻译。 JSON 文件的路径指向正确的位置。

我收到以下错误: i18next::translator: missingKey en translation test test

import i18next from 'i18next';
import Backend from 'i18next-fs-backend';

const instance = i18next.use(Backend).createInstance({
    lng: config.language,
    debug: true,
    fallbackLng: 'en',
    initImmediate: false,
    backend: {
        loadPath: join(__dirname, `${config.language}.json`),
    },
}, (error, t) => {
    console.log(t('foo'));
});

JSON 文件:

{
      "foo": "bar"
}

使用 resources 属性 在 createInstance 中直接指定翻译非常有效。

我尝试了所有我能想到的方法,但没有成功。

找到解决方案!

import i18next from 'i18next';
import Backend from 'i18next-fs-backend';

const instance = i18next.use(Backend).createInstance();
instance.init({
    lng: config.language,
    debug: true,
    fallbackLng: 'en',
    initImmediate: false,
    backend: {
        loadPath: join(__dirname, `${config.language}.json`),
    },
}, (error, t) => {
    console.log(t('foo'));
});