ExtJS 4:Ext.grid.Panel构造函数在实现配置和构造函数配置时抛出异常

时间:2013-10-07 17:28:05

标签: exception extjs extjs4 config

我正在尝试将名为“hideButton”的自定义参数传递给Ext JS 4中的网格视图构造函数。当我添加“config”和“constructor”配置时,框架抛出了Uncaught TypeError: Cannot read property 'added' of undefined的异常到我的网格视图。警报消息会被调用。在警报对话框中单击“确定”后调用此异常。导致此异常的原因是什么?

Ext.define('App.view.ExampleGrid', {
    extend: 'Ext.grid.Panel',
    xtype: 'view-grid-3',

    config: {   

        hideButton: false
    },

    constructor: function(cfg) {

        alert('called constructor');
        this.initConfig(cfg);
    },

...

我通过“xtype”配置使用延迟实例化从两个不同的其他组件实例化网格视图。这是需要通过调用构造函数隐藏网格视图中的按钮的组件。

items: [{
    region: 'center',
    xtype: 'view-tree-3',
    width: '40%'
}, {
    region: 'east',
    xtype: 'view-grid-3',
    store: 'GridStore',
    config: {
        hideButton: true
    },
    width: '60%'        
}]

1 个答案:

答案 0 :(得分:2)

我们只是说你不能在Ext JS 4.x中使用config块。这是目前仅限触控功能。

要在派生类中添加或覆盖配置选项,请将配置选项放在类声明主体上:

Ext.define('App.view.ExampleGrid', {
    extend: 'Ext.grid.Panel',

    hideButton: false,

    ...
});

实例化时,使用实例配置执行相同的操作:

my grid = new App.view.ExampleGrid({
    hideButton: true // Overriding the default for this instance
});