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 相关文章推荐
YUI Compressor压缩JavaScript原理及微优化
Jan 07 Javascript
用Jquery实现滚动新闻
Feb 12 Javascript
Bootstrap模态框插件使用详解
May 11 Javascript
Vue.js中兄弟组件之间互相传值实例
Jun 01 Javascript
React 子组件向父组件传值的方法
Jul 24 Javascript
vue.js 嵌套循环、if判断、动态删除的实例
Mar 07 Javascript
jQuery中的for循环var与let的区别
Apr 21 jQuery
Vue中UI组件库之Vuex与虚拟服务器初识
May 07 Javascript
vue使用微信JS-SDK实现分享功能
Aug 23 Javascript
Vue axios 将传递的json数据转为form data的例子
Oct 29 Javascript
浅析Vue 中的 render 函数
Feb 28 Javascript
JS中准确判断变量类型的方法
Jun 01 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
Yii使用技巧大汇总
2015/12/29 PHP
Laravel Intervention/image图片处理扩展包的安装、使用与可能遇到的坑详解
2017/11/14 PHP
javascript 简单抽屉效果的实现代码
2010/03/09 Javascript
更换select下拉菜单背景样式的实现代码
2011/12/20 Javascript
8款非常棒的响应式jQuery 幻灯片插件推荐
2012/02/02 Javascript
在javascript中如何得到中英文混合字符串的长度
2014/01/17 Javascript
FF IE浏览器修改标签透明度的方法
2014/01/27 Javascript
Select标签下拉列表二级联动级联实例代码
2014/02/07 Javascript
Javascript 实现微信分享(QQ、朋友圈、分享给朋友)
2016/10/21 Javascript
利用jQuery实现一个简单的表格上下翻页效果
2017/03/14 Javascript
node.js(express)中使用Jcrop进行图片剪切上传功能
2017/04/21 Javascript
node.js中cluster的使用教程
2017/06/09 Javascript
浅谈Node.js CVE-2017-14849 漏洞分析(详细步骤)
2017/11/10 Javascript
Angular使用过滤器uppercase/lowercase实现字母大小写转换功能示例
2018/03/27 Javascript
在微信小程序中渲染HTML内容的方法示例
2018/09/28 Javascript
基于elementUI使用v-model实现经纬度输入的vue组件
2019/05/12 Javascript
小程序开发之模态框组件封装
2020/04/23 Javascript
微信小程序实现转盘抽奖
2020/09/21 Javascript
Python常用正则表达式符号浅析
2014/08/13 Python
Windows下python2.7.8安装图文教程
2016/05/26 Python
python 中split 和 strip的实例详解
2017/07/12 Python
Python for循环中的陷阱详解
2018/07/13 Python
对Python中Iterator和Iterable的区别详解
2018/10/18 Python
详解Python time库的使用
2019/10/10 Python
python-sys.stdout作为默认函数参数的实现
2020/02/21 Python
Python datetime 格式化 明天,昨天实例
2020/03/02 Python
python利用faker库批量生成测试数据
2020/10/15 Python
Python django框架 web端视频加密的实例详解
2020/11/20 Python
物业管理求职自荐信
2013/09/25 职场文书
英语自荐信常用语句
2013/12/13 职场文书
硕士研究生就业推荐信
2014/05/18 职场文书
公司奖励通知
2015/04/21 职场文书
企业宣传稿范文
2015/07/23 职场文书
pandas数值排序的实现实例
2021/07/25 Python
Python面试不修改数组找出重复的数字
2022/05/20 Python
Redis实现主从复制方式(Master&Slave)
2022/06/21 Redis