【发布时间】:2015-10-14 22:37:26
【问题描述】:
我正在用 i18next 编写一个节点服务器。
在我的主页 (http://localhost:3000) 上,i18next.js 按预期提供。
在子页面 (http://localhost:3000/users/hans) 上,但是,它没有。
(404) GET http://localhost:3000/users/i18next/i18next.js
frontend.js:3 Uncaught TypeError: Cannot read property 'init' of undefined
我不明白为什么。
app.js
//[...]
var app = express();
var user = require('./routes/users'); // USER ROUTE
var routes = require('./routes/index');
// view engine setup
app.set('views', path.join(__dirname, 'views'));
app.set('view engine', 'jade');
i18n.serveClientScript(app).serveDynamicResources(app);
//[...]
前端.js:
$(document).ready(function() {
$.i18n.init({
debug: true,
detectLngQS: 'lang',
fallbackLng: 'en',
load: 'unspecific',
lowerCaseLng: true,
resGetPath: './locales/__lng__-__ns__.json',
}, function() {
$.t('markup.login');
$('p, a, h1, label, button').i18n();
});
$('.langButton').on('click', function(event) {
var setLangTo = $(event.target).attr('name');
console.log(setLangTo);
$.i18n.setLng(setLangTo, function() {
$('p, a, h1, label, button').i18n();
})
})
});
据我了解,i18next.js 应该自动提供给任何请求,独立于路由。我也不知道怎么把路径改成/,这样js就可以正常加载了……
我错过了什么吗?错误的顺序(我尝试重新排序无济于事)?我应该更改任何设置吗?
感谢您的帮助:)
附加信息
我刚刚注意到这只发生在用户页面上(两个子级别) 一个子级别(例如 localhost:3000/training)有效……这很奇怪。 有什么想法吗?
【问题讨论】:
标签: javascript node.js i18next