Dojo+MVC 之旅1 HelloWorld

ASP.Net MVC抛弃jQuery使用Dojo

理由如下:

1.支持svg 地图

2.图表

3.验证

4.ui

。。。

假如jQuery要实现以上功能他的包大小肯定比Dojo大。他没有官方的实现,除了jQuery UI以外。

说明Dojo版本的差异太大,按照网上的资料大部分不好用。只有参照他的api编写。在我的资源有Dojo1.8 chm

1.配置Dojo

var dojoConfig = {
                parseOnLoad: true,
                isDebug: true,
                locale: "zh",
                baseUrl: "/Scripts/dojo/"   注意此处不能有~
            };

2.引入Dojo

<script type="text/javascript" src="@Url.Content("~/Scripts/dojo/dojo.js")"></script>


3.load事件,参照jQuery.ready

dojo.ready(function () {});

以上参照网上的ok!

但是一下就不好用了

添加一个button+触发事件。下面是正确的方法,版本1.8.3

引入css

 <link rel="Stylesheet" href="@Url.Content("~/Scripts/dijit/themes/claro/claro.css")" type="text/css" media="screen" />

引入dijit

 <script type="text/javascript">
            dojo.require("dijit.form.Button");
            myOnClick = function (evt) {
                alert("click");
            };
            dojo.ready(function () {
                dojo.connect(dojo.byId("button1"), "onclick", myOnClick);
            });
    </script>

html

<body class="claro">
       <button id="button1" data-dojo-type="dijit/form/Button">测试</button>
    </body>

测试ok!花了大半天的时间浪费在

dojo.require("dojo.event.*"); 上了经过firefox调试他不动了。

经过长时间的调试熟悉发现版本不同使用的方法不同。

说一句,Dojo的技术资料不如jQuery。

而且Dojo中国感觉还是个人的网站根本不像是Dojo官方的。他不是以推广Dojo为宗旨的。他是介绍Dojo顺带卖自己产品的。

你可能感兴趣的:(Dojo+MVC 之旅1 HelloWorld)