我正在进行大量的异步调用,并使用loadMany来预加载这样的ember数据存储:
if(data.feed.activities.length > 0){
App.store.loadMany(App.Activity, data.feed.activities);
}
如果我不止一次读取同一个项目,我的一些绑定就会搞砸了。
如果项目已经在商店中,是否有办法不重新加载项目?我不想迭代每个项目并检查是否可能。
答案 0 :(得分:0)
这是来自store.js
中的load()文档“将新数据哈希加载到商店中以获取给定的ID和类型 组合。如果先前已加载该记录的数据,则 新信息会覆盖旧信息。如果您正在加载数据的记录 因为有尚未保存的突出变化,例外 将被抛出。“
如您所见,新信息会覆盖旧信息,因此可以重新加载相同的数据。也许你有另一个问题。您是否正确配置了自己的ID?