ext理解

1、ext组件初始化
--constructor,构造函数初始化
TsGrid = Ext.extend(Ext.grid.GridPanel, {

 constructor : function(){

  TsGrid.superclass.constructor.call(this, {
/*your code*/
                 })
})

--initComponent,init初始化
TsGrid = Ext.extend(Ext.grid.GridPanel, {
 initComponent : function(){
                /*your code*/
  TsGrid.superclass.initComponent.call(this);
 }
)

1)initComponent这个方法是在Ext.Component的构造函数(constructor)中调用的,只有直接或间接继承自 Ext.Component的类才会在constructor里调用initComponent方法。这个方法是在constructor中被调用的,如果不调用,它默认不会在构造时被执行。而且你可以看一下Ext.Component的构造函数,在调用this.initComponent()这个方法前后都会有别的一些处理,所以这两个东西不等,不过一般的讲继承自Ext的组件的类,都会在new的时候调用到initComponent .
2)在一系列的继承中要注意的是,如果重写了构造函数,则应该在必要的时候调用超类(superclass)的构造函数,initComponent和onRender也一样。否则可能会造成一些不必要的麻烦。

你可能感兴趣的:(ext)