Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/35.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/apache-kafka/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Angularjs Nodejs:使用i18n-2客户端或服务器端或两者_Angularjs_Node.js_Internationalization_Locale - Fatal编程技术网

Angularjs Nodejs:使用i18n-2客户端或服务器端或两者

Angularjs Nodejs:使用i18n-2客户端或服务器端或两者,angularjs,node.js,internationalization,locale,Angularjs,Node.js,Internationalization,Locale,我正在nodejs中开发一个项目,我想为语言翻译添加一个功能 在互联网上查看时,我看到了两个看起来不错的选项(i18n和i18n-2) 我已经在我的服务器端添加了正确的代码来配置它 在express.js中 var i18n = require('i18n-2'); i18n.expressBind(app, { // setup some locales - other locales default to vi silently locales: ['es', 'en'], // set

我正在nodejs中开发一个项目,我想为语言翻译添加一个功能

在互联网上查看时,我看到了两个看起来不错的选项(i18n和i18n-2)

我已经在我的服务器端添加了正确的代码来配置它

在express.js中

var i18n = require('i18n-2');


i18n.expressBind(app, {
// setup some locales - other locales default to vi silently
locales: ['es', 'en'],
// set the default locale
defaultLocale: 'en',
// set the cookie name
cookieName: 'locale',
extension: ".json"
});

app.use(function(req, res, next) {
req.i18n.setLocaleFromQuery();
req.i18n.setLocaleFromCookie();
next();
});
因此,如果在同一个文件中,我把这段代码放在下面,假设它是用英语打印的,因为defaultLocale是用西班牙语打印的

var i18n2 = new (require('i18n-2'))({
locales: ['es', 'en'],
// set the default locale
defaultLocale: 'en',
// set the cookie name
cookieName: 'locale',
extension: ".json"
});
console.log("Mensaje de i18n");
console.log( i18n2.__("hola") );
除了这个问题,我想知道如何将这个i18n变量发送到客户端,以便在模板视图中使用它,或者如果我必须创建另一个变量


问候语

问题是在对象初始化期间未使用defaultLocale选项。您可以检查这个库是如何运行的。只是从locales数组中获取第一个el。因此,如果您将“en”语言放在第一位,它将正常工作