我们创建一个Ext.Componet组件时候,会按照以下顺序对组件进行初始化。
1、调用Ext.apply()复制参数;//Ext.apply(me,config);
2、调用addEvents() 添加事件;//me.addEvents
3、调用initComponent()初始化组件;
4、调用Ext.ComponentMgr.register(me)注册当前组件;
5、调用initPlugin()初始化插件;
6、getLoader()加载;
7、调用render()对组件进行渲染。
下面是
Ext.AbstractComponent的代码片段:
constructor : function(config) {
var me = this,
i, len;
config = config || {};
me.initialConfig = config;
Ext.apply(me, config);
me.addEvents(
/**
* @event beforeactivate
* Fires before a Component has been visually activated. Returning false from an event listener can prevent
* the activate from occurring.
* @param {Ext.Component} this
*/
'beforeactivate',
/**
* @event activate
* Fires after a Component has been visually activated.
* @param {Ext.Component} this
*/
'activate',
/**
* @event beforedeactivate
* Fires before a Component has been visually deactivated. Returning false from an event listener can
* prevent the deactivate from occurring.
* @param {Ext.Component} this
*/
'beforedeactivate',
/**
* @event deactivate