我正试图从i18next的v1移动到v2(https://github.com/i18next)。 我设法移动我的节点快速代码广告让它工作,现在我尝试前端,这是Jquery脚本,数据从Ajax调用填充到节点服务器。
它不起作用,我收到此错误消息 - 文件没有移动,它在v1中工作
" GET https://localhost:8800/locales/it-IT/translation.json 500 (Internal Server Error)
i18next::backendConnector: loading namespace translation for language it-IT failed failed loading locales/it-IT/translation.json"
我的Jquery代码是
i18next.use(i18nextXHRBackend).init({
compatibilityAPI: 'v1',
compatibilityJSON: 'v1',
backend: {
// path where resources get loaded from
loadPath: '/locales/{{lng}}/{{ns}}.json'
},
debug:true,lng: 'it-IT',fallbackLng : 'it' }, (err, t) => {
// and here continue with my code
我做错了什么,但我无法理解是什么,或者发生了什么。我多次阅读文档,但仍然是黑洞。我使用兼容性来保持代码的某些部分运行,直到我修改所有内容
我的服务器是节点服务器,与v1中的配置相同。难道我需要一个Web服务器来提供静态文件吗?或者我应该在我的节点服务器中放一些东西来为它们服务? 感谢任何提示,帮助,示例,解释
答案 0 :(得分:0)
我找到了原因。我的服务器代码有: app.get('/ locales /:lng /:ns',i18nextMiddleware.getResourcesHandler(i18n));
事实上我并不想要。 一旦线路出来,一切正常!