首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Dojo自定义语言变体

Dojo自定义语言变体
EN

Stack Overflow用户
提问于 2013-04-19 08:41:40
回答 1查看 309关注 0票数 1

Dojo是否支持创建用于Dojo的locale和i18n的自定义语言变体

有人知道我是否能够为Dojo语言环境创建一个与i18n一起工作的自定义语言变体吗?

代码语言:javascript
复制
Example

define({
   root: {
     greeting: "Hello, world!"
   }
  "de-myVariant" : true
});
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-04-19 18:03:29

是的,这是可以做到的。如果您有nls/SampleApp.js as:

代码语言:javascript
复制
define({
   root: {
     greeting: "Hello!"
   }
  "de" : true,
  "de-at": true,
  "de-x-mundl": true
});

则在nls下将有三个子目录

代码语言:javascript
复制
nls/de
nls/de-at
nls/de-x-mundl

对于nls/de/SampleApp.js

代码语言:javascript
复制
define(({
    greeting: "Hallo!"
}));

对于nls/de-at/SampleApp.js

代码语言:javascript
复制
define(({
    greeting: "Gruß Gott!"
}));

而对于nls/de-x-mundl/SampleApp.js

代码语言:javascript
复制
define(({
    greeting: "Servus, Mundi!"
}));

然后,如果您配置Dojo以获取区域设置作为URL参数:

代码语言:javascript
复制
<script src="./dojo/1.8.3/dojo/dojo.js" 
        data-dojo-config="locale: location.search.substring(1).toLowerCase()">
</script>

您可以通过将locale标记作为该参数传递来轻松切换语言:

代码语言:javascript
复制
   .../app.html?de-DE
   .../app.html?de-at
   .../app.html?de-x-Mundl

请注意,Dojo认为地区标签是区分大小写的,这就是为什么输入是toLowerCase()ed的原因,并且在内部所有标签都是小写的。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/16095430

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档