Javascript原始的继承写法:
Javascript代码 复制代码
Extjs中替换constructor,写法如下:
Javascript代码 复制代码
1. Ext.extend adds the superclass property to the prototype of subclass (=the prototype of class you are extending from).
2. Ext.extend also adds a constructor property to the prototype of the subclass (=the class itself). It also adds a contructor to the prototype of the superclass if it is an Object.
3. With method.call(obj) you can execute a method in a specified scope (this=obj).
Javascript代码 复制代码
// Traditional constructor:
Ext.Foo = function(config){
// call superclass constructor:
Ext.Foo.superclass.constructor.call(this, config);
this.addEvents({
// add events
});
};
Ext.extend(Ext.Foo, Ext.Bar, {
// class body
}
Extjs中替换constructor,写法如下:
Javascript代码 复制代码
// initComponent replaces the constructor:
Ext.Foo = Ext.extend(Ext.Bar, {
initComponent : function(){
// call superclass initComponent
Ext.Container.superclass.initComponent.call(this);
this.addEvents({
// add events
});
}
}
1. Ext.extend adds the superclass property to the prototype of subclass (=the prototype of class you are extending from).
2. Ext.extend also adds a constructor property to the prototype of the subclass (=the class itself). It also adds a contructor to the prototype of the superclass if it is an Object.
3. With method.call(obj) you can execute a method in a specified scope (this=obj).