标签:
1. dojo 对象定义
/**
* 测试使用 类创建
*/
declare("com.zsq.C1",null,{
id:null,
name:null,
getName:function(){
return this.name;
},
constructor:function(){
// 特殊的方法 在类实例化的时候会执行该方法
}
});
/**
* 相当于JAVA的匿名内部类
*/
var c2 = declare(null,{
id:null,
name:null,
getId:function(){
return this.id;
}
});
/**
* 子类
*/
var c3 = declare(c2,{
code:null,
getCode:function(){
return this.code;
}
});
/**
* 多继承
*/
var c4 = declare([c3,c2],{
type:null,
getType:function(){
return this.type;
}
});
2. 封装为符合AMD规范的对象 // 其实也就是一个requirejs定义模块包裹一下 文件路径 my/Person.js
define(["dojo/_base/declare"], function(declare){
return declare(null, {
constructor: function(name, age, residence){
this.name = name;
this.age = age;
this.residence = residence;
}
});
});
3. 对象的使用 同样基于requirejs 通过文件路径查找相应的JS 这个和配置有关 这个这里不描述
require(["my/Person"], function(Person){
var folk = new Person("phiggins", 42, "Tennessee");
});
可以说是只是使用了Dojo的类定义封装
4. 静态对象 参照JAVA 其实所谓的静态就是一个全局的对象 如:java 的class 定义对象 JS 也一样 只是使用一个全局的对象来实现static
define([‘dojo/_base/declare‘], function(declare){
var Demo = declare(null, {
constructor: function(){
console.debug("this is Demo object #" + Demo.counter++);
}
});
Demo.counter = 0;
return Demo;
});
标签:
原文地址:http://my.oschina.net/u/1156053/blog/364184