文档章节

Dojo 基础入门(三)

w
 waking999
发布于 2017/05/24 13:32
字数 1247
阅读 6
收藏 0

1.            开发环境准备

1.1.    开发环境

Dojo本身是由Javascript编写而成的,所以基于Dojo的扩展也是Javascript语言。目前,存在着一些支持Javascript语法高亮的编辑器,如UltraEdit, Notepad等。如果只是单纯的客户端用户界面的开发,完全可以采用编辑器+浏览器的方式,这样开发的执行效率最高,占用的系统资源最少。

当然了,如果需要后台数据支持、服务器端逻辑支持,那就需要考虑应用服务器、数据库等其他资源,这个时候一个集成开发环境(IDE)对我们的开发帮助就大有裨益了。由于工作原因,笔者使用的是IBM Rational开发平台,实际上根据需要选择带有插件功能的Eclipse平台就可以满足Dojo日常开发的要求了。在Dojo的官方网站推荐了几款其他的IDE工具,比如Aptana Studio等,它们各有利弊,开发者可以依据项目要求、个人使用习惯等选择相应的IDE工具。

1.2.    测试环境

由于Javascript是客户端的运行代码,所以测试的对象就是那些主流的浏览器。理论上说,在开发测试时,脚本程序要在各种浏览器上开发验证。但依据笔者的经验,在开发的过程中就以Firefox为测试目标, 测试成功的页面一起在IE中集成测试即可。

使用Firefox的另一个原因是在目前Javascript的调试还不是很发达的情况下,Firefox下的一个调试插件可以帮助我们做一些事情,它就是Firebug.

1.3.    Firebug

1.3.1.      下载

可以到Firebug的官方网站直接下载,网址是http://www.getfirebug.com。需要注意的一点是,由于FirebugFirefox的插件,所以需要使用Firefox访问该网址,直接点击Install Firebug按钮即可直接安装完成。

1.3.2.      常用功能的使用

1.3.2.1.            准备

首先需要在使用前把isDebug参数设置为true,这样可以打印出相应的信息。如果不希望出现这些打印信息,可以设置成false予以关闭。

<script type="text/javascript" src="../dojo.js"
        djConfig="parseOnLoad: true, isDebug: true"></script>

1.3.2.2.            记录日志

在需要打印信息的地方加入如下的执行语句,可打印出不同级别的信息。

console.log("Nothing happening");
console.debug("Checking to make sure nothing happened");
console.info("Something might happen.");
console.warn("Something happened, but it's no big deal.");
console.error("Cough cough!");

 

可以看到在FirebugConsole标签以上语句的执行效果以及该执行语句所在的文件以及行数。除此以外,你还可以到Dojo的核心库和Dijit组件的加载状态。

小提示

1.如果你不希望看到某些信息,可以通过右上角的Options选项予以过滤。

2.另一个比较值得一提的是console.dir()语句,这条语句对对象类型的变量打印比较直观。比如:

var btn=dijit.byId('helloBtn');

console.dir(btn);

 

3.此外,一些对象有其父对象或子属性对象,执行console的打印语句后,可以在Firebug的第一行发现对象的父子传递顺序,可以通过其中某一对象节点的链接直接索引到该对象。

1.3.2.3.            查看Html结构

由于一个用户界面系统的开发会涉及若干的htmljs文件,这些文件都可能含有构成用户界面布局的代码,如何可以直观地查看这些分散在不同角落的代码的html层级结构就成为了一个问题。而Firebug就提供了这样的功能。

切换到Html标签,我们就可以看到整个用户界面的html结构代码,它具有良好的树状格式,易于查看,而且选择html结构的某个节点时,其相对应的页面组件会变成蓝底高亮。同时该节点的样式属性参数也用列表的方式列于右侧。而其DOM形式的展现可以通过选择右侧的DOM标签予以查看。

1.3.2.4.            加断点

如果想要看到对象的状态、语句执行后的结果,除了使用打印语句,我们还可以使用Firebug提供的调试功能,比如断点。

切换到Script标签,可以在Firebug的第一行,选择希望加入断点的脚本所在文件。定位到某一行后,在该行号处点击左键即可实现断点的添加/删除功能。当语句执行到该处时,会出现黄色的箭头。

在第一行的右侧,还有Continue,Step Over,Step Into,Step Out等按钮以及快截键。右侧的下方Watch标签,显示了执行到该断点处的变量名/值的列表,我们也可通过New watch expression添加其他的变量或表达式。

 

 

 

本文转载自:http://blog.csdn.net/kswaking/article/details/2232674

共有 人打赏支持
w
粉丝 0
博文 23
码字总数 0
作品 0
澳大利亚
私信 提问
Dojo入门与dojo项目配置方案(一)

何为dojo Toolkit Dojo Toolkit(以下简称dojo)是一个javascript语言实现的、跨浏览器的DHTML(Dynamic HTML)工具包。Dojo ToolKit包括了构建大规模Ajax驱动的web应用程序所需要的一切。所...

tkorays
2014/01/01
0
0
Dojo Mobile 1.7 入门

最新版的移动 Web 开发框架 Dojo Mobile 1.7,是 Dojo Toolkit 的一个扩展。本文将使您了解如何从主干网址下载 Dojo 1.7,以及如何在您的应用程序中使用 Dojo Mobile。您还将探索它提供的各种...

IBMdW
2012/12/18
4.2K
8
深入浅出 Javascript API(一)--基本框架

Javascript API是ArcGIS Server 9.3新增的一套API框架,为创建WebGIS应用提供了轻量级的解决方法,在客户端利用ags所提供的服务,就能实现地图应用和地理功能。 还记得ArcIMS Blueviewer示例...

文艺小青年
2017/03/02
0
0
手把手教你Dojo入门

如果仅仅是为了练习Dojo,或者进行测试,可以参考下面的步骤。下面的文件均是在Windows下测试 需要的工具 1 Tomcat服务器:下载地址 选择适合自己的机器型号,即可 2 Dojo的工具包:下载地址 ...

青夜之衫
2017/12/04
0
0
面向对象的JavaScript框架--Dojo

Dojo是一个强大的面向对象JavaScript框架。主要由三大模块组成:Core、Dijit、DojoX。Core提供Ajax,events,packaging,CSS-based querying,animations,JSON等相关操作API。Dijit是一个可更换皮...

匿名
2008/09/05
95.1K
6

没有更多内容

加载失败,请刷新页面

加载更多

Ubuntu18.04 安装MySQL

1.安装MySQL sudo apt-get install mysql-server 2.配置MySQL sudo mysql_secure_installation 3.设置MySQL非root用户 设置原因:配置过程为系统root权限,在构建MySQL连接时出现错误:ERROR...

AI_SKI
今天
2
0
3.6 rc脚本(start方法) 3.7 rc脚本(stop和status方法) 3.8 rc脚本(以daemon方式启动)

3.6-3.7 rc脚本(start、stop和status方法) #!/usr/bin/env python# -*- coding: utf-8 -*-# [@Version](https://my.oschina.net/u/931210) : python 2.7# [@Time](https://my.oschina.......

隐匿的蚂蚁
今天
3
0
Cnn学习相关博客

CNN卷积神经网络原理讲解+图片识别应用(附源码) 笨方法学习CNN图像识别系列 深度学习图像识别项目(中):Keras和卷积神经网络(CNN) 卷积神经网络模型部署到移动设备 使用CNN神经网络进行...

-九天-
昨天
4
0
flutter 底部输入框 聊天输入框 Flexible

想在页面底部放个输入框,结果键盘一直遮住了,原来是布局问题 Widget build(BuildContext context) { return Scaffold( appBar: AppBar( title: Text("评论"), ...

大灰狼wow
昨天
4
0
Kernel I2C子系统

备注:所有图片来源于网络 1,I2C协议: 物理拓扑: I2C总线由两根信号线组成,一条是时钟信号线SCL,一条是数据信号线SDA。一条I2C总线可以接多个设备,每个设备都接入I2C总线的SCL和SDA。I...

yepanl
昨天
5
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部