1

「hideButton」という名前のカスタム パラメーターを Ext JS 4 のグリッド ビュー コンストラクターに渡そうとしています。Uncaught TypeError: Cannot read property 'added' of undefined「config」および「constructor」構成をグリッド ビューに追加したときに、フレームワークが例外をスローしています。アラート メッセージが呼び出されます。この例外は、アラート ダイアログで [OK] をクリックした後に呼び出されます。この例外の原因は何ですか?

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」構成による遅延インスタンス化を使用して、他の 2 つの異なるコンポーネントからグリッド ビューをインスタンス化しています。コンストラクターを呼び出して、グリッド ビューでボタンを非表示にする必要があるコンポーネントを次に示します。

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

1 に答える 1

2

configExt JS 4.x ではブロックを使用できないとしましょう。当面はタッチのみの機能です。

派生クラスで構成オプションを追加またはオーバーライドするには、構成オプションをクラス宣言本体に配置します。

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
});
于 2013-10-07T17:48:32.407 に答える