2014-10-28 28 views
0

我有一个覆盖列示:Beforeload事件不触发时,店有一台服务器代理

//Renabled the refresh buttons once these stores have loaded data OK... 
Ext.define('App.overrides.data.Store', { 
    override: 'Ext.data.Store', 
    onProxyLoad: function() { 
     switch (this.storeId) { 
      case 'store1': 
      case 'store2': 
      case 'store3': 
      case 'store4': 
      case 'store5': 
       Utils.getCmp('button[itemId=mainRefreshButton]').setDisabled(false); 
       Utils.getCmp('button[itemId=refreshButton]').setDisabled(false); 
       Utils.getCmp('button[itemId=refreshAccountButton]').setDisabled(false); 
       break; 
     } 
     this.callParent(arguments); 
    }, 
    listeners: { 
     beforeload: function (store, operation, opts) { 
      //debugger; 
      switch (store.storeId) { 
       case 'store1': 
       case 'store2': 
       case 'store3': 
       case 'store4': 
       case 'store5': 
        Utils.getCmp('button[itemId=mainRefreshButton]').setDisabled(true); 
        Utils.getCmp('button[itemId=refreshButton]').setDisabled(true); 
        Utils.getCmp('button[itemId=refreshAccountButton]').setDisabled(true); 
        break; 
      } 
      return true; 
     } 
    } 
}); 

onProxyLoad覆盖正常工作与服务器代理。但beforeload听众只为我打开的时候了存储器存储火灾(存储在他们的固定数据,如“是” /“否”阵列数据)

当我做store1.reload()(与服务器代理商店),我从未达到听众代码。

任何想法?谢谢。

NB:我已经验证了声明store1/2/3/4/5之前的覆盖运行。

回答

0

我结束了重写load方法就像这样:

//Renabled the refresh buttons once these stores have loaded data OK... 
 
Ext.define('App.overrides.data.Store', { 
 
    override: 'Ext.data.Store', 
 
    onProxyLoad: function() { 
 
    switch (this.storeId) { 
 
     case 'store1': 
 
     case 'store2': 
 
     case 'store3': 
 
     case 'store4': 
 
     case 'store5': 
 
     Utils.getCmp('button[itemId=mainRefreshButton]').setDisabled(false); 
 
     Utils.getCmp('button[itemId=refreshButton]').setDisabled(false); 
 
     Utils.getCmp('button[itemId=refreshAccountButton]').setDisabled(false); 
 
     break; 
 
    } 
 
    this.callParent(arguments); 
 
    }, 
 
    load: function() { 
 
    switch (store.storeId) { 
 
     case 'store1': 
 
     case 'store2': 
 
     case 'store3': 
 
     case 'store4': 
 
     case 'store5': 
 
     Utils.getCmp('button[itemId=mainRefreshButton]').setDisabled(true); 
 
     Utils.getCmp('button[itemId=refreshButton]').setDisabled(true); 
 
     Utils.getCmp('button[itemId=refreshAccountButton]').setDisabled(true); 
 
     break; 
 
    } 
 
    this.callParent(arguments); 
 
    } 
 
});

现在我赶上每家商店的每一个负载/重装。

相关问题