Dojo入门与dojo项目配置方案一

何为dojo Toolkit

Dojo Toolkit(以下简称dojo)是一个javascript语言实现的、跨浏览器的DHTMLDynamic HTML)工具包。Dojo ToolKit包括了构建大规模Ajax驱动的web应用程序所需要的一切。所以,你也可以把他看成是一个Ajax库,但它不仅仅是个ajax库。

dojo功能远比你想象的要强大,几乎能够满足你开发web应用时所需要的。当然,dojo的学习难度比较大,但是一旦你掌握了它,你会发现使用dojo来开发应用原来是这么方便和得心应手。

Dojo框架的组成

Dojo大致可以分成dojodijitdojox这三个包(Package)。

dojo包是dojo toolkit的基础,它包含了整个框架最基础的部分,包括Ajax基础、事件等。

dijit包里面包含了基于模板的布局组件(widget)类。如对话框日历、树等。

dojoxdojo eXtensions)是一个扩展区,提供了更加绚丽的组件和一些新奇的组件,很强大!

下图是dojo的文件夹目录:

如果你只需要dojoajax与事件操作,完全可以不使用dijitdojox

Dojo工具包与AMD(异步模块加载)

Dojo中的功能是模块化的,这样便于管理。它包含了上百个包,这些包分别位于dojodijitdojox这三个一级命名空间下。所以在使用时我们通常按需加载。

下图是一些常用包。这些包分布在不同文件夹里。

每个包里面有很多的类,可以实现一些特定功能。

异步模块加载不用在html中嵌入<script>标签来加载javascript,而是在javascript代码中加载。

加载方法有几种:

  1. 传统的dojo.require()/dojo.provide()

  2. Dojo异步模块加载器AMD格式,define()

  3. require()直接加载

代码如下:

如何部署

下载dojo框架(http://dojotoolkit.org),并解压放到网站某个能访问的目录下,比如你放到了(wwwroot)/下,里面的dojo目录包含dojodijitdojox三个目录。这样就可以了吗?是的!就是这么简单。不过以后可能涉及包路径问题,这个在后面会推荐一个比较好的开发模板。

从简单例子开始

这个例子中只需要新建一个html文件就可以了,引入必要的dojo.js(这个根据你把dojo框架放哪来定)。

首先在html里引入dojo.js文件,这个js文件是必须包含的,而且在整个框架你甚至只要在html里包含这一个js文件。require用来以AMD模式加载其他包,但这里面我们没有用到其他包,所以比较简单。byId函数式属于dojo命名空间下的函数,已经通过script标签加载了。

require函数的使用:

require(

[“模块1”,”模块2”],

function(模块1的别名,模块2的别名)

/*……*/

})

上图中,包含了app包中map类,其别名为appMap。所以下面使用时不用写完整的名字:app.map,只需要appMap

相关文章

我有一个网格,可以根据更大的树结构编辑小块数据.为了更容易...
我即将开始开发一款教育性的视频游戏.我已经决定以一种我可以...
我正在使用带有Grails2.3.9的Dojo1.9.DojoNumberTextBox小部...
1.引言鉴于个人需求的转变,本系列将记录自学arcgisapiforja...
我正在阅读使用dojo’sdeclare进行类创建的语法.描述令人困惑...
我的团队由更多的java人员和JavaScript经验丰富组成.我知道这...