Dojo是否支持创建用于Dojo的locale和i18n的自定义语言变体
有人知道我是否能够为Dojo语言环境创建一个与i18n一起工作的自定义语言变体吗?
Example
define({
root: {
greeting: "Hello, world!"
}
"de-myVariant" : true
});发布于 2013-04-19 18:03:29
是的,这是可以做到的。如果您有nls/SampleApp.js as:
define({
root: {
greeting: "Hello!"
}
"de" : true,
"de-at": true,
"de-x-mundl": true
});则在nls下将有三个子目录
nls/de
nls/de-at
nls/de-x-mundl对于nls/de/SampleApp.js
define(({
greeting: "Hallo!"
}));对于nls/de-at/SampleApp.js
define(({
greeting: "Gruß Gott!"
}));而对于nls/de-x-mundl/SampleApp.js
define(({
greeting: "Servus, Mundi!"
}));然后,如果您配置Dojo以获取区域设置作为URL参数:
<script src="./dojo/1.8.3/dojo/dojo.js"
data-dojo-config="locale: location.search.substring(1).toLowerCase()">
</script>您可以通过将locale标记作为该参数传递来轻松切换语言:
.../app.html?de-DE
.../app.html?de-at
.../app.html?de-x-Mundl请注意,Dojo认为地区标签是区分大小写的,这就是为什么输入是toLowerCase()ed的原因,并且在内部所有标签都是小写的。
https://stackoverflow.com/questions/16095430
复制相似问题