Dojo 学习要点


Posted in Javascript onSeptember 03, 2010

由于要学习 ArcGIS Server JavaScript API,在此 API 中 ESRI 采用的是 JavaScript 开源框架 Dojo,于是先学习了点 Dojo 的知识,算是为以后的工作做准备吧。
其实开源 JavaScript 框架很多,比如最早的 prototype,很实用的 jQuery,Yahoo 的 Yui,超炫的 ExtJS 等,至于为什么 ESRI 采用 Dojo,我们也不必去猜测,肯定有人家的道理滴,好好学习 Dojo 才是硬道理。
学习 Dojo 之前,务必要掌握一些必要的J avaScript 知识,如 json 等。由于以前 JavaScript 自认为学的还可以,ExtJS 也算是入门了,相对来说学习 Dojo 容易很多了。
现在 Dojo 的最新版本是 1.5.0 版,在其官网上可以下载到 dojo-release-1.5.0.zip 压缩文件。
言归正传,下面为自己的一些学习要点,就权当是做个私人笔记吧。

1,通过dojo.require以类似C编程中#include或者Java中import的方式加载所需的部件 
如dojo.require("dojo.parser");dojo.require("dijit.form.Button"); 
2,跨域自定义模块 
Dojo配置,djConfig="baseUrl:'./'" 
注册模块的路径,dojo.registerModulePath("dtdg","./dtdg"); 
加载自定义模块,dojo.require("dtdg.foo"); 
3,本地工具箱模块 
直接加载自定义模块,dojo.require("dtdg.foo"); 
4,为对象注册事件 
dojo.connect(); 
5,json和字符串之间转换 
dojo.fromJson(/*String*/ json);//返回JavaScript对象,json对象 
dojo.toJson(/*Object*/ json, /*Boolean*/ prettyPrint);//返回字符串 
6,Ajax通信 
dojo.xhrGet(/*Object*/ args);dojo.xhrPost(/*Object*/ args); 
dojo.xhr(/*String*/ method, /*Object*/ args, /*Boolean?*/ hasBody); 
7,本地化 
djConfig="dojo.local:'zh'" 
8,控件、布局等都在dijit中
Javascript 相关文章推荐
JavaScript实际应用:innerHTMl和确认提示的使用
Jun 22 Javascript
jQuery技巧总结
Jan 01 Javascript
js调用图片隐藏&显示实现代码
Sep 13 Javascript
Javascript基础教程之数据类型转换
Jan 18 Javascript
jQuery实现统计输入文字个数的方法
Mar 11 Javascript
js+html5实现canvas绘制简单矩形的方法
Jun 05 Javascript
深入浅析react native es6语法
Dec 09 Javascript
jQuery实现两列等高并自适应高度
Dec 22 Javascript
原生JS轮播图插件
Feb 09 Javascript
详解在微信小程序的JS脚本中使用Promise来优化函数处理
Mar 06 Javascript
通过JS运行机制的角度说说作用域
Mar 12 Javascript
vue2 拖动排序 vuedraggable组件的实现
Aug 08 Javascript
jquery.simple.tree插件 更简单,兼容性更好的无限树插件
Sep 03 #Javascript
基于JQuery的6个Tab选项卡插件
Sep 03 #Javascript
Jquery中dialog属性小记
Sep 03 #Javascript
javascript中使用css需要注意的地方小结
Sep 01 #Javascript
js截取函数(indexOf,join等)
Sep 01 #Javascript
qTip 基于JQuery的Tooltip插件[兼容性好]
Sep 01 #Javascript
jQuery选中select控件 无法设置selected的解决方法
Sep 01 #Javascript
You might like
一个自定义位数的php多用户计数器代码
2007/03/11 PHP
Zend Framework教程之前端控制器Zend_Controller_Front用法详解
2016/03/07 PHP
完美解决phpexcel导出到xls文件出现乱码的问题
2016/10/29 PHP
PHP错误和异常处理功能模块示例
2016/11/12 PHP
PHP文件系统管理(实例讲解)
2017/09/19 PHP
PHP 自动加载类原理与用法实例分析
2020/04/14 PHP
JQuery 插件制作实践 xMarquee插件V1.0
2010/04/02 Javascript
javascript中注册和移除事件的4种方式
2013/03/20 Javascript
简单的代码实现jquery定时器
2013/11/17 Javascript
JavaScript判断字符长度、数字、Email、电话等常用判断函数分享
2015/04/01 Javascript
javascript中checkbox使用方法实例演示
2015/11/19 Javascript
JavaScript中定义类的方式详解
2016/01/07 Javascript
基于Jquery和html5实现炫酷的3D焦点图动画
2016/03/02 Javascript
JavaScript驾驭网页-DOM
2016/03/24 Javascript
Nodejs+Socket.io实现通讯实例代码
2017/02/13 NodeJs
浅析bootstrap原理及优缺点
2017/03/19 Javascript
JS中使用正则表达式g模式和非g模式的区别
2017/04/01 Javascript
nodejs操作mysql实现增删改查的实例
2017/05/28 NodeJs
基于Swiper实现移动端页面图片轮播效果
2017/12/28 Javascript
JS使用Prim算法和Kruskal算法实现最小生成树
2019/01/17 Javascript
Laravel admin实现消息提醒、播放音频功能
2019/07/10 Javascript
[50:59]2018DOTA2亚洲邀请赛 4.7 总决赛 LGD vs Mineski第四场
2018/04/10 DOTA
Python中MYSQLdb出现乱码的解决方法
2014/10/11 Python
优化Python代码使其加快作用域内的查找
2015/03/30 Python
深入讨论Python函数的参数的默认值所引发的问题的原因
2015/03/30 Python
简单介绍Ruby中的CGI编程
2015/04/10 Python
让Python代码更快运行的5种方法
2015/06/21 Python
python编程实现归并排序
2017/04/14 Python
pip安装Python库时遇到的问题及解决方法
2017/11/23 Python
全球度假村:Club Med
2017/11/27 全球购物
日本亚马逊官方网站:Amazon.co.jp
2020/04/14 全球购物
yy司仪主持词
2014/03/22 职场文书
建材投资建议书
2014/05/16 职场文书
数学教研活动总结
2014/07/02 职场文书
68句权威创业名言
2019/08/26 职场文书
python 爬取天气网卫星图片
2021/06/07 Python