首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >当没有转换文件时,i18next获取404响应

当没有转换文件时,i18next获取404响应
EN

Stack Overflow用户
提问于 2021-11-05 22:57:03
回答 1查看 41关注 0票数 0

我正在使用i18next-http-backend获取翻译。

翻译文件:

代码语言:javascript
复制
en.json
pt.json
pt-BR.json

这是我的配置:

代码语言:javascript
复制
.init({
  fallbackLng: 'en',
  supportedLngs: ['en', 'pt', 'pt-BR'],
  nonExplicitSupportedLngs: true,

  backend: {
    backends: [
      LocalStorageBackend, // primary
      HttpBackend, // fallback
    ],
    backendOptions: [
      {
        prefix: 'i18next_res_',
        defaultVersion: version,
      },
      {
        loadPath: '${some-path}/{{ns}}/{{lng}}.json',
        addPath: '${some-path}/{{ns}}/{{lng}}',

        queryStringParams: { v: version },
      },
    ],
  },
})

如果浏览器语言是英语(美国) en-US,我会得到404 Not Found错误,然后加载en

当我将load: 'languageOnly'添加到配置中时,没有404,但在这种情况下,无法加载pt-BR语言。而是加载pt

我查看了文档,但没有找到修复此行为的选项。

EN

回答 1

Stack Overflow用户

发布于 2021-11-09 12:19:18

"i18next“库开发者的评论:

“因此,如果没有en-US,但有en,并且您使用load:'all‘或no load选项,en资源将被加载。但在此之前,i18next尝试获取en-US,如果没有en-US资源,您将看到404...

如果您不想“看到”这404个请求,则需要在supportedLngs选项中列出所有语言,并且不要设置nonExplicitSupportedLngs: true

换句话说:如果你使用nonExplicitSupportedLngs: true,你不能阻止所有的404“

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/69860069

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档