【问题标题】:ExtJS 4.0.7 TreeStore - avoid two HTTP requests by using the same data in two TreeStoresExtJS 4.0.7 TreeStore - 通过在两个 TreeStore 中使用相同的数据来避免两个 HTTP 请求
【发布时间】:2013-02-19 07:49:59
【问题描述】:

我的应用程序有两个可编辑的TreePanels,每个都显示一个树,因此每个都有自己的TreeStore 定义。最初,这些商店的数据完全相同 - 从服务器加载的大型 JSON 树。所以最好不要发出两个 HTTP 请求,加载相同的 JSON 树,因为这是一个非常昂贵的操作。

请注意,这两个 TreePanel 的底层 TreeStore 对象必须不同。否则,一个面板中的更改将立即级联到另一个面板。

但是,有谁知道是否有可能避免发出两个 HTTP 请求,而只是将一个 TreeStore 加载的数据传递给另一个?

非常感谢任何建议。 谢谢!

【问题讨论】:

    标签: http extjs tree store treepanel


    【解决方案1】:

    在这里找到了答案:

    http://www.clintharris.net/2011/how-to-use-extjs-4-treepanels-with-both-static-data-and-model-stores/

    诀窍是在第二个 TreeStore 上使用 setRootNode() 方法并传入数据。为了从第一个 TreeStore 中获取数据,我最终只是递归地遍历树并构造它的字符串 JSON 表示。然后使用 Ext.decode() 方法将其转换回对象。这种相互转换是相当浪费的,但是 deep copy() 不起作用 - ExtJS 中的错误。无论如何,这仍然比访问服务器快得多。

    【讨论】:

      猜你喜欢
      • 2011-12-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-06-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多