Javascript 当前语言angularjs和i18next
我用这个: 我只能在选项中获取语言(如果设置): 你是如何获得当前语言的? 文件说: i18n.lng()返回当前lng 但是在$i18next.lng()的上下文中不存在 我还尝试:Javascript 当前语言angularjs和i18next,javascript,angularjs,internationalization,i18next,Javascript,Angularjs,Internationalization,I18next,我用这个: 我只能在选项中获取语言(如果设置): 你是如何获得当前语言的? 文件说: i18n.lng()返回当前lng 但是在$i18next.lng()的上下文中不存在 我还尝试: console.log("language: " + $i18next.lang); console.log("language: " + $i18next.language ); console.log("language: " + $i18next.lng); 我是ng-i18next的开发者 ng-i1
console.log("language: " + $i18next.lang);
console.log("language: " + $i18next.language );
console.log("language: " + $i18next.lng);
我是
ng-i18next
的开发者
ng-i18next
使用angular的$watch
功能查找$i18next.选项的任何更改
这意味着您应该通过将$i18next.options.lng
设置为所需的任何语言来更改语言
因此,$i18next.options.lng
始终包含当前语言。不需要$i18next.lng()
当然,这也会起作用:window.i18n.lng()
我是ng-i18next
的开发者
ng-i18next
使用angular的$watch
功能查找$i18next.选项的任何更改
这意味着您应该通过将$i18next.options.lng
设置为所需的任何语言来更改语言
因此,$i18next.options.lng
始终包含当前语言。不需要$i18next.lng()
当然,这也会起作用:window.i18n.lng()
i18next提供者就是这样做的:window.i18n.lng()代码>
[编辑]我知道这是一个老问题,但我也在寻找答案,我认为分享我的发现是个好主意。i18next provider就是这样做的:window.i18n.lng()代码>
[编辑]我知道这是一个老问题,但我也在寻找答案,我认为分享我的发现是个好主意。这对我很有用:
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是示例中的语言键 这对我有用:
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是示例中的语言键 如果让它检测浏览器语言,并且在初始化时未指定lng,则$i18next.options.lng未定义。例如,将$i18next.options.lng设置为“de”不会为我重新加载语言。我必须再次执行init,以便在不刷新的情况下翻译页面。您可能知道原因吗?如果您让它检测浏览器语言,并且在初始化时未指定lng,则$i18next.options.lng未定义。例如,将$i18next.options.lng设置为“de”不会为我重新加载语言。我必须再次执行init,以便在不刷新的情况下翻译页面。你知道为什么吗?