1

ツリーパネルを定義します。そして、ツリーの読み込みが完了するのを待つために mask() を追加してみます。しかし、機能していません。

これが私のコードです

Ext.define('Example.example', {
    extend: 'Ext.tree.Panel',
    alias: 'widget.example',
    title: 'example',
    store: Ext.create('Ext.data.TreeStore', {
    ...
    listeners: {
        'load': function (store, records, success) {
            Ext.ComponentQuery.query('example').getEl().unmask(); // not working
        },
        'beforeload': function (store, options) {                                    
            Ext.ComponentQuery.query('example').getEl().mask();// not working
        }
    }
})
});

それを機能させる方法に感謝します。

4

2 に答える 2

3

いずれかの文書化されていないownerTreeプロパティを使用します。

beforeload: function() {
    this.ownerTree.getEl().mask("Loading", 'x-mask-loading');
}

または、スコープを取得するためにリスナーをメソッドに登録します。

Ext.define('Example.example', {
    // ...
    ,initComponent: function() {
        this.callParent(arguments);

        this.getStore().on({
            scope: this
            ,beforeload: function() {
                this.getEl().mask("Loading", 'x-mask-loading');
            }
        });
    }
});
于 2013-09-18T15:02:55.017 に答える