Пытаюсь сделать мультиязычность на i18n
получаю ошибку если перехожу на domains.dev/en или ru
ошибкаTypeError: req.setLocale is not a function
at init (B:/OSPanel/domains/domains.dev/frontend/server/locales/services/i18n_urls.js:24:13)
в app.js (взял отсюда
Github)
services.i18nUrls.configure(app, i18n, {
locales: ['ru', 'en'],
defaultLocale: 'ru',
cookie: process.env.npm_package_name + '_i18n_cookie',
indent: ' '
});
servicesmodule.exports = {
configure: function(app, i18n, config) {
app.locals.i18n = config;
i18n.configure(config);
},
init: function(req, res, next) {
var rxLocale = /^\/(\w\w)/i;
if (rxLocale.test(req.url)){
var locale = rxLocale.exec(req.url)[1];
if (req.app.locals.i18n.locales.indexOf(locale) >= 0)
req.setLocale(locale);
}
//else // no need to set the already default
next();
},
url: function(app, url) {
var locales = app.locals.i18n.locales;
var urls = [];
for (var i = 0; i < locales.length; i++)
urls[i] = '/' + locales[i] + url;
urls[i] = url;
return urls;
}
};