我正在使用这个: https://github.com/archer96/ng-i18next
我只能在选项中获得语言(如果设置):
console.log("language: " + $i18next.options.lng);
你如何获得当前的语言? 文件说: i18n.lng()返回当前的lng。
但在角度$ i18next.lng()的上下文中不存在。
我也尝试过:
console.log("language: " + $i18next.lang);
console.log("language: " + $i18next.language );
console.log("language: " + $i18next.lng);
答案 0 :(得分:3)
我是ng-i18next
的开发人员。
ng-i18next
使用有角度的$watch
函数查找$i18next.options
上的所有更改。
这意味着您应该通过将$i18next.options.lng
设置为您想要的任何语言来更改语言。
因此,$i18next.options.lng
始终包含当前语言。不需要$i18next.lng()
。
当然这也可行:window.i18n.lng()
答案 1 :(得分:3)
答案 2 :(得分:0)
这对我有用:
var language;
/* init i18next */
i18n.init(options, function(t) {
$("body").i18n();
/* set global language var for usage in other functions */
var language = i18n.detectLanguage();
});
要设置语言,请将参数添加到URL(?setLng = de),而de是示例中的语言键。