在网格中清除存储和加载搜索结果

Clear store and load search result in grid

当我加载我的应用程序时,第一个组件是一个网格(带有分页栏)。

网格存储具有自动加载配置:true

该应用程序有第二个组件,即表单,用于搜索,并将结果加载到网格中。

当我单击搜索按钮时,如果网格位于第 2 页,而搜索字符串仅存在于第一页,则不会 return 任何结果。

我使用的解决方案是转到第一页,删除所有记录(使用 autoload: true 加载),然后加载搜索结果。

store.loadPage(1) ; 
store.removeAll();
store.proxy.extraParams = {...};
store.load({
  …
});

问题是解决方案需要进行两次连续加载并短暂地网格显示起始记录(自动加载),删除它们然后显示搜索结果。

我的目标是清除网格(存储)以正确加载搜索结果。

有更好的方法吗?

谢谢。

不进行两次加载,而是在商店的 loadPage 函数中传递参数:

store.loadPage(1,{
    params: your_params, //store.proxy.extraParams = {...};
    callback: function(records,operation,success){
        //your code
    }
});

您可以:

store.proxy.extraParams = {...};
store.loadPage(1, {...});

除非你使用 clearOnPageLoad: false.