【问题标题】:How to reload extjs stores?如何重新加载 extjs 商店?
【发布时间】:2011-07-07 04:24:59
【问题描述】:

我有 3 个不同的商店(在 3 个选项卡中),它们共享数据,只有一个字段被更改。当我单击第一个商店选项卡上的某个项目的按钮时,我希望该项目列在第二个商店的选项卡中并从第一个商店中删除。我当前(可能是虚拟的)解决方案是在每个按钮单击事件上为每个商店使用 Store.loadData() 。但是当商店变得庞大时(例如数千甚至数百万件商品),我认为这不是一个实用的解决方案。

所以我的问题是,当非共享字段发生更改时,有什么方法可以重新加载这种存储(与一些唯一的存储字段共享数据)?

【问题讨论】:

  • 对您的问题的简短回答是“否”。此外,商店里有“数千甚至数百万件商品”听起来像是需要重新审视的设计。
  • 那么我应该用什么来列出网格内的这么多项目?你能建议另一种方法吗?

标签: extjs4 extjs


【解决方案1】:

您可以为多个网格使用完全相同的商店,但不能按照您描述的方式“混合和匹配”。 你要做的就是——

  • 收听适当的事件(行或单元格级别选择)
  • 在您的监听器中,根据您的逻辑修改stores 中的记录。

要处理“数千甚至数百万个项目”,您可以查看以下方法 -

【讨论】:

  • 同意,我有一些可从网格访问的数百万行数据集。显然,您将优化的数据存储与搜索(索引)相结合。
  • 返回并尝试您的解决方案需要一些时间。我终于决定改变我的应用程序结构。但无论如何,你的帖子回答了我的问题。谢谢。
猜你喜欢
  • 2013-01-31
  • 2020-04-14
  • 2012-08-10
  • 2018-12-24
  • 2011-12-21
  • 2014-03-11
  • 1970-01-01
  • 2013-03-17
  • 2012-03-11
相关资源
最近更新 更多