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的文件夹目录:

201921_dWGV_616622.png

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

 

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

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

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

 

201954_JDBr_616622.jpg

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

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

         加载方法有几种:

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

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

  3. require()直接加载

代码如下:

202023_Zt9r_616622.jpg

202036_Axeg_616622.jpg

 

如何部署

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

 

 

从简单例子开始

202053_pMW2_616622.jpg

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

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

require函数的使用:

require(

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

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

/*……*/

})

202110_9IQC_616622.jpg

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

 


转载于:https://my.oschina.net/tkorays/blog/189408