Extjs有条件地跳过商店负载

时间:2011-02-16 15:38:21

标签: extjs

这个问题与另一个问题有关:
EXTjs gridfilter: How to clearfilter without reloading store?

我的想法是:

如果有1个商店,则有两个功能(f1)(f2),并且都会调用store.load()

将调用f1f2,并且无法保证订单。有没有办法让f1检查商店是否已由f2加载(反之亦然),如果已加载,请跳过store.load的{​​{1}}命令。

我正在寻找的方法如下:

f1

这可能吗?

2 个答案:

答案 0 :(得分:1)

使用 store.getCount()肯定是一个粗略的解决方案,如果加载的记录恰好是无,则会产生不准确的信息。

Sencha支持提出solution

'检查商店是否存在lastOptions,如果存在,那么您的商店至少加载了一次。'

似乎 lastOptions 不再是ExtJS 4.1的一部分。作为解决方法,可以包含并设置“isLoaded”布尔值作为Store加载覆盖的一部分。

答案 1 :(得分:0)

以下是我对此问题的看法: 每个商店都有两个布尔变量。两者最初都将设置为false(表示未加载存储)。

现在,两个商店都会有一个'load'事件的监听器方法。如果加载了商店,listener方法将简单地设置布尔变量。

因此,在你的f1和f2中,你将检查boolean值call reload。与此同时,您将找到将布尔变量再次设置为false的位置和时间。

我希望这会对你有所帮助。