标签:extjs 别名和备用名 定义静态方法 混入属性 其他属性
(1)Ext.define起别名和备用名
Ext.onReady(function(){
Ext.define('User',{
config:{
name:'张三',
age:23
},
//使用别名
alias:'alias_user',
//使用备用名
alternateClassName:'alternateClassName_user',
constructor:function(config){//构造器
var me=this;
me.initConfig(config);
}
});
//用三个名字进行定义
var u1=Ext.create('User');
var u2=Ext.create('alias_user');
var u3=Ext.create('alternateClassName_user');
alert(u1.getName()+'=='+u1.getAge());
alert(u2.getName()+'=='+u1.getAge());
alert(u3.getName()+'=='+u1.getAge());
});结果:
(2)定义静态方法(两种方法)
Ext.onReady(function(){
Ext.define('Person',{
config:{
name:'张三'
},
statics:{//静态的方法或属性
static_id:'我是Person的id,不能被子类所继承!!'
},
inheritableStatics:{ //静态的方法或属性
inheritableStatics_id:'我是Person的id,我可以被子类继承!!'
},
constructor:function(config){
var me = this;
me.initConfig(config);
}
});
Ext.define('User',{
extend:'Person',
config:{
age:23
}
});
//对继承过来的静态属性进行测试:实例对象是无法使用静态属性或者方法的
//用类名去使用静态属性或者方法
alert(User.static_id);
alert(User.inheritableStatics_id);
alert(Person.static_id);
});
结果:
(3)混入属性,相当于多继承:
Ext.onReady(function(){
Ext.define('Boy',{
boySay:function(){
alert('I am a boy...');
}
});
Ext.define('Girl',{
girlSay:function(){
alert('I am a girl...');
}
});
Ext.define('Person',{
mixins:{//混入属性,相当于多继承
boy:"Boy",
girl:"Girl"
}
});
var p=Ext.create('Person');
p.boySay();
p.girlSay();
});
(4)Ext.define的其他属性:
ExtJS学习-------Ext.define的别名和备用名,两种定义静态方法的方法,混入属性和其他属性,布布扣,bubuko.com
ExtJS学习-------Ext.define的别名和备用名,两种定义静态方法的方法,混入属性和其他属性
标签:extjs 别名和备用名 定义静态方法 混入属性 其他属性
原文地址:http://blog.csdn.net/z1137730824/article/details/38708511