检查项目是否已存在于ember-data存储中

时间:2012-06-13 19:59:10

标签: ember.js ember-data

我正在进行大量的异步调用,并使用loadMany来预加载这样的ember数据存储:

if(data.feed.activities.length > 0){
  App.store.loadMany(App.Activity, data.feed.activities);
}

如果我不止一次读取同一个项目,我的一些绑定就会搞砸了。

如果项目已经在商店中,是否有办法不重新加载项目?我不想迭代每个项目并检查是否可能。

1 个答案:

答案 0 :(得分:0)

这是来自store.js

中的load()文档
  

“将新数据哈希加载到商店中以获取给定的ID和类型   组合。如果先前已加载该记录的数据,则   新信息会覆盖旧信息。如果您正在加载数据的记录   因为有尚未保存的突出变化,例外   将被抛出。“

如您所见,新信息会覆盖旧信息,因此可以重新加载相同的数据。也许你有另一个问题。您是否正确配置了自己的ID?