【问题标题】:Cannot make i18next work in nodeJS express backend无法使 i18next 在 nodeJS express 后端工作
【发布时间】:2022-02-17 10:49:23
【问题描述】:

我目前正在尝试将本地化添加到我的 nodeJS 后端,但我遇到了问题。

在我的前端(角度)中,我有一个拦截器,可以在标题中设置语言:

在我的请求标题中的“Accept-Language”中可以看到成功的工作:

在我的后端 app.js 中,我导入并配置 i18next、i18next-fs-backend、i18next-http-middleware 并设置语言环境文件的路径(也可以在下面看到)和:

但是当我尝试在我的回复中使用翻译时它不起作用,它显示“delete_success”而不是翻译。

在我的翻译文件中:

下面我发布了一些打印在 req.i18n console.log 中的内容,以防万一:

bound I18n {
 observers: { languageChanged: [ [Function (anonymous)] ] },
 options: {
 debug: false,
 initImmediate: false,
 ns: [ 'translation' ],
 defaultNS: [ 'translation' ],
 fallbackLng: [ 'en' ],
 preload: [ 'pt-BR' ],
 backend: {
   loadPath: './locales/{{lng}}/translation.json',
   addPath: '/locales/{{lng}}/{{ns}}.missing.json',
   ident: 2,
   parse: [Function: parse],
   stringify: [Function: stringify]
 },
 language: 'en',
}

我不知道还有什么可以尝试的,有什么建议吗? :(

【问题讨论】:

    标签: javascript node.js express localization i18next


    【解决方案1】:

    我发现了我的问题!

    问题出在为语言环境指定的路径中,如下所示:

    三个小时搞定T_T

    【讨论】:

      猜你喜欢
      • 2020-11-18
      • 2019-12-16
      • 2021-12-22
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-06-19
      • 1970-01-01
      相关资源
      最近更新 更多