繁体   English   中英

当前语言angularjs和i18next

[英]current language angularjs and i18next

我正在使用这个: 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);

我是ng-i18next的开发人员。

ng-i18next使用angular的$watch函数查找$i18next.options上的任何更改。

这意味着您应该通过将$i18next.options.lng设置$i18next.options.lng的任何语言来更改语言。

因此, $i18next.options.lng始终包含当前语言。 不需要$i18next.lng()

当然这也将起作用: window.i18n.lng()

这就是i18next提供程序的工作方式: 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是您的语言键。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM