我是ExtJS4的新用户。我正在项目中使用分页工具栏。我正在使用
清除网格grid.getStore().removeAll()
现在问题在于分页工具栏。如果我们点击按钮,那么它正在检索商店。我怀疑如何在分页工具栏中清除商店?
请帮帮我。
感谢你,
Kushal
答案 0 :(得分:1)
我只是花了几个小时研究这个东西,想分享以防有人还在寻找它。看起来Ext.toolbar.Paging不会监听在removeAll()方法上触发的商店的清除事件。我的解决方案是对它进行子类化并覆盖getStoreListeners以将onLoad内部函数绑定到clear事件。我顺便使用ExtJS 4.1。
Ext.define('MyApp.ClearablePagingToolbar', {
extend: 'Ext.toolbar.Paging',
alias: 'widget.clearablepagingtoolbar',
getStoreListeners: function () {
var listeners = this.callParent();
Ext.apply(listeners, {
clear: this.onLoad
});
return listeners;
}
});
您可以通过在网格中引用clearablepagingtoolbar来使用它,如下所示:
dockedItems: [{
xtype: 'clearablepagingtoolbar',
dock: 'bottom',
displayInfo: true,
store: this.getSearchResultStore()
}]
答案 1 :(得分:0)
首先,您是否为网格和工具栏配置了相同的商店?如果是,您应该尝试清除商店本身,而不是使用grid.getStore()(例如myStore.removeAll())
答案 2 :(得分:0)
如果网格和分页工具栏使用相同的存储,则分页工具栏将正常工作。如果您使用单独的存储(这是错误的编码样式),您需要调用此分页面板的商店的同步方法,以同步数据。