i18nextify 不翻译 javascript 函数

i18nextify doesn't translate in javascript function

按照 this 示例,我能够将语言环境添加到我的应用程序并翻译 html/Jade.

中的字符串

例如,给定这个 translation.json 文件:

{
    "test": "prova"
}

我可以把它放在我的翡翠页面中:

label test

现在我正在使用与上述 link 相同的配置选项。 不起作用的是 javascript 函数中的翻译,例如:

script(type="text/javascript").
    require([
        "dojo/ready",
        "dojo/dom",
        "dojo/on",
        "dojo/request/xhr",
        "dojo/domReady!"
    ], function (ready, dom, on, xhr) {
        console.log("dom ready");
        console.log("test");
    });

它不会将字符串 "test" 转换为 "prova",就像上面 html 代码中的几行一样。 在 github 示例中,作者做了类似的事情:

var t = document.createTextNode("CLICK ME");

其中 "CLICK ME" 是翻译文件中可用的字符串。 因此我猜它也应该翻译我的

console.log("test");

我错过了什么?

当我们将该节点附加到 dom -> i18nextify 使用虚拟 dom 实现并自动解析和翻译 dom 内容时,示例确实有效。

您可以使用底层 i18next 实例直接翻译 javascript 内容。

console.log(i18nextify.i18next.t('dom ready')); -> 文档见 http://i18next.com