使用侦听器扩展网格

时间:2013-12-19 10:49:30

标签: extjs grid extend

我正在尝试扩展Ext.grid.Panel以构建一个将带有“prebuild”侦听器的人(将检查商店,并告诉商店在gridpanel的标题中添加nulber记录) 。我在这个过程的最开始就陷入困境,尽管浏览了一段时间,我找不到正确的方法:

//Extending a grid with a simple hello world... 
Ext.define('MIS.Ext.GridExtraHeaderData', {
    extend: 'Ext.grid.Panel',
    alias: 'widget.gridExtraHeaderData',
    listeners:{
        beforerender:function(){
            console.log('hello world');
        }
    }
});

我用MIS.Ext.GridExtraHeaderData替换了Ext.grid.Panel,并且网格工作得非常好,但我在控制台中看不到任何“hello world”...

当我查看创建的对象时,我已经填充了“listeners:null”和“ proto .listeners”。

我试过构造函数,initComponent,没有成功。

1 个答案:

答案 0 :(得分:1)

不要尝试在侦听器块中绑定它们,因为它们将与任何用户定义的侦听器冲突。相反,将它们绑定在代码中:

Ext.define('MIS.Ext.GridExtraHeaderData', {
    extend: 'Ext.grid.Panel',
    alias: 'widget.gridExtraHeaderData',

    initComponent: function() {
        this.on('beforerender', function() {
        }, this);
        this.callParent();
    }
});