无法使 i18next 在 nodeJS Express 后端工作
Cannot make i18next work in nodeJS express backend
我目前正在尝试将本地化添加到我的 nodeJS 后端,但我遇到了麻烦。
在我的前端 (angular) 中,我有一个在 header 中设置语言的拦截器:
如我请求的 header 中的 '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',
}
我不知道还能尝试什么,有什么建议吗? :(
我发现了我的问题!
问题出在为语言环境指定的路径中,如下所示:
三个小时搞清楚T_T
我目前正在尝试将本地化添加到我的 nodeJS 后端,但我遇到了麻烦。
在我的前端 (angular) 中,我有一个在 header 中设置语言的拦截器:
如我请求的 header 中的 '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',
}
我不知道还能尝试什么,有什么建议吗? :(
我发现了我的问题!
问题出在为语言环境指定的路径中,如下所示:
三个小时搞清楚T_T