官方教程:Configuring Dojo with dojoConfig
例子:

<-- set Dojo configuration, load Dojo -->
<script>
    dojoConfig=
{
        has: {
            "dojo-firebug":
true
        },
        parseOnLoad:
false,
        foo:
"bar",
        async:
true,
        aliases:[
            ["ready",
"dojo/domReady"],
            ["registry","dijit/registry"],
           
["dialog","dijit/Dialog"],
           
["parser","dojo/parser"]
       
],
        packages: [{
            name: "js",
            location:
"/js"
        }],
       
locale:
location.search.match(/locale=([\w\-]+)/) ? RegExp.$1 :
"en-us"
    };
</script>
<script src="http://blog.163.com/mqsy_yj/blog/http://ajax.googleapis.com/ajax/libs/dojo/1.7.1/dojo/dojo.js"></script>
 
<script>
// Require the registry, parser, Dialog, and wait for
domReady
require(["registry", "parser",
"dialog",
"ready!"],
function(registry, parser) {
    // Explicitly parse the page
    dojo.parser.parse();
    // Find the dialog
    var dialog =
registry.byId(
"dialog");
    // Set the content equal to what dojo.config
is
    dialog.set("content",
"<pre>" + dojo.toJson(dojo.config,
true) +
"</pre>");
    // Show the dialog
    dialog.show();
});
</script>
 
<!-- and later in the page -->
<div
id="dialog"
data-dojo-type="dijit.Dialog"
data-dojo-props="title: 'dojoConfig /
dojo.config'"
></div>

dojoConfig用于设置一些在Dojo运行时的选项和默认的行为方式。
在上面的代码中,首先定义dojoConfig设置一些属性,然后加载dojo.js,如果这个过程反过来,那dojoConfig的配置则无效。

        data-dojo-config="has:{'dojo-firebug':
true}, parseOnLoad: false, foo: 'bar', async:
true"
>
</script>
这是另一种写法,等同于前一种。前一种是写在一个单独的script块中,后一种是作为script标签的一个属性。个人认为前一种比较好,如果需要配置的内容比较多时,前一种会更清楚直观,容易理解。
下面说一些配置项。
has()用来设置一些Dojo支持的系统特性。
has:
{

    "dojo-firebug":
true,//加载Dojo版的Firebug调试环境,如果浏览器没有自带调试工具,可以用这个

    "dojo-debug-messages":
true//显示调试信息,针对于一些废弃的或测试中的功能特性在运行时的信息
}

另外还有debugContainerId,用于在页面显示debug控制台界面的地方;popup,在弹出窗口中显示debug控制台,而不是在当前页面中。

Loader
Configuration
加载时一些常用选项

packages: [{
    name:
"myapp",
    location: "/js/myapp"
}]

//提供包名及其路径

aliases: [
    // [alias name, true name]
    ["cookie",
"dojo/cookie"]
]
//设置别名

async:true/false/legacyAsync

//是否异步加载

parseOnLoad:true/false

//是否在DOM和所有初始化完成后由dojo.parser解析页面

本地化与国际化
locale:
location.search.match(/locale=([\w\-]+)/) ? RegExp.$1 :
"en-us"

上面代码会在地址中查找参数locale=xx,如http://dojotoolkit.org/documentation/tutorials/1.7/dojo_config/demo/localeConfig.html?locale=zh,这里参数locale=zh

require(["dojo/date/locale",
"dijit/Dialog", "dojo/i18n",
"dojo/domReady!"],
function(locale,
Dialog)
{
            var now = new
Date();
            var dialog = new Dialog({
                id:
"dialog",
                title: "Today: " +
locale.format(now,{
                   
formatLength:"full",
                    selector:"date"
               
})
            }).placeAt(dojo.body());
           
dialog.startup();
            dialog.set("content","<pre>" +
dojo.toJson(dojo.config,true) + "</pre>");
           
dialog.show();
       
});

上面代码中将日期格式进行本地化放在Dialog的标题栏中。如果没有找到locale=xx,则默认为en-us。

 
如果同鞋觉得有用,劳烦点点下面的广告支持我一下,不胜感激。

验证码:换一张
 
上一页 1...
-1-1-1-1-1-1-1...
-1下一页

dojo 五 配置dojoconfig的更多相关文章

  1. dojo之配置dojoconfig

    官方教程:Configuring Dojo with dojoConfig例子: <-- set Dojo configuration, load Dojo --> <script& ...

  2. dojo(五):Dijit-基本组件

    转自:http://blog.csdn.net/trendgrucee/article/details/12679949 1.简介 Dijit是Dojo的UI框架,包含一系列丰富的组件以帮助你快速开发 ...

  3. Jenkins五 配置tomcat

    一:jdk安装 查看系统自带jdk版本并卸载 [root@localhost conf]# rpm -qa|grep jdkjdk1.8-1.8.0_201-fcs.x86_64 移除: yum re ...

  4. 十九、springcloud(五)配置中心本地示例和refresh

    1.创建spring-cloud-houge-config子项目,测试需要的项目入下 2.添加依赖 <dependency> <groupId>org.springframew ...

  5. spring cloud学习(五) 配置中心

    Spring Cloud Config为服务端和客户端提供了分布式系统的外部化配置支持.配置服务中心采用Git的方式存储配置文件,因此我们很容易部署修改,有助于对环境配置进行版本管理. 一.配置中心 ...

  6. Vue学习笔记(五)——配置开发环境及初建项目

    前言 在上一篇中,我们通过初步的认识,简单了解 Vue 生命周期的八个阶段,以及可以应用在之后的开发中,针对不同的阶段的钩子采取不同的操作,更好的实现我们的业务代码,处理更加复杂的业务逻辑. 而在这一 ...

  7. Spring-Security (学习记录五)--配置登录时,密码采用md5加密,以及获取登录信息属性监听同步自己想要的登录信息

    目录 1. PasswordEncoder 采用密码加密 2. 获取当前的用户信息 1. PasswordEncoder 采用密码加密 使用前面的例子.可以看出我们数据库密码是采用明文的,我们在登录的 ...

  8. 使用dojoConfig配置dojo(翻译)

    http://dojotoolkit.org/documentation/tutorials/1.10/dojo_config/index.html dojoConfig对象(原来是djConfig对 ...

  9. Configuring Dojo with dojoConfig - The Dojo Toolkit

    转载自Dojo官网 Configuring Dojo with dojoConfig The dojoConfig object (formerly djConfig) allows you to s ...

随机推荐

  1. 数组中找出最小的K个数

    题目 给出一个数组,找出K个最小的值 例如给出数组{5,2,4,3,1},给定K值3,则输出结果为{2,3,1} 程序 先给出第一个版本的程序 public static void printKNum ...

  2. codeforces 148E Aragorn's Story 背包DP

    Aragorn's Story Time Limit: 20 Sec  Memory Limit: 256 MB 题目连接 http://codeforces.com/problemset/probl ...

  3. 厄拉多塞筛法和普通方法求素数表(python实现)

    厄拉多赛筛法(sieve of Eratosthenes): 想要得到一个不大于N的数所有素数,可以先找到不超过根号N的所有素数,设2 = p1 < p2 < ......<pk ≤ ...

  4. iOS 发光字流水

    { CAGradientLayer *_gradientLayer; NSInteger count; } - (void)addLabel{ // 创建UILabel UILabel *label ...

  5. MySQL 之 Index Condition Pushdown(ICP)

    简介 Index Condition Pushdown (ICP)是MySQL 5.6 版本中的新特性,是一种在存储引擎层使用索引过滤数据的一种优化方式. 当关闭ICP时,index 仅仅是data ...

  6. JavaFX学习之Web

    PopupFeatures 处理新窗口    WebHistory 网页一般都带有历史记录的功能,可以回退,也可以前进,fx用WebHistory处理. final WebHistory wh = w ...

  7. 在安卓上,微信公众号无法分享到QQ的解决办法之一

    今天做一个微信公众号分享功能,参考微信sdk,代码几乎没有任何问题,但就是分享到QQ失败,以下是我QQ分享部分的代码: wx.onMenuShareQQ({ title: '快来和我一起玩转大脑', ...

  8. jdk1.8 foreach

    lambda 表达式效率非常低,测试代码可以看到大概3~5倍的差距 遍历Map的方式有很多,通常场景下我们需要的是遍历Map中的Key和Value,那么推荐使用的: public static voi ...

  9. 深入解析OkHttp3

    OkHttp是一个精巧的网络请求库,有如下特性: 
1)支持http2,对一台机器的所有请求共享同一个socket 
2)内置连接池,支持连接复用,减少延迟 
3)支持透明的gzip压缩响应体 
4) ...

  10. VS2010 VC++ 项目添加引用 出现 Internal CPS Error问题原因及解决办法

    在VS2010 VC++ 项目添加引用时,有时会出现Internal CPS Error错误,提示信息: 'Internal CPS Error: We couldn't find the exist ...