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
按照 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