i18next 使用 i18next-xhr-backend 从 api 加载 json

i18next load json from api using i18next-xhr-backend

我尝试在 React Native 中从 API 加载一个翻译 JSON 文件并解析它,但似乎加载不起作用,因为解析方法从不调用。

function initI18Next(onInit) {

return (
    i18n
        .use(initReactI18next)
        .use(XHR)
        .init({
            ...initOptions,
            backend : backendOptions
        }).then(onInit())
)}

初始化选项:

export const initOptions = {
fallbackLng : 'es',
defaultNS   : 'translation',
lng         : 'es',
debug: true,
keySeparator : false,
initImmediate: false,
preload : ['en', 'es'],
react: {
    wait: true,
    useSuspense: false
},
interpolation: {
    escapeValue: true // not needed for react as it escapes by default
},
resources : i18nResources

}

后端选项:

export const backendOptions = {
loadPath: 'http://www.mocky.io/v2/5ecd0fe73200006400236655.json',
parse(data) {
    console.log('data', data);

    return data;
}

};

i18next-xhr-backend 已弃用,请改用 i18next-http-backend... 然后尝试将 i18next 调试选项设置为 true 并查看开发人员控制台日志。

顺便说一句:我觉得加载路径很奇怪。它应该更像这样:https://github.com/i18next/i18next-http-backend#backend-options