use*_*285 6 local-storage ember.js ember-data ember-model
我已经扩展了此stackoverflow答案中给出的程序,以便有一个程序一次性删除所有记录.但是,删除仅在批处理中发生,并且不会一次删除所有内容.
这是我在这个JSBin中使用的函数的片段.
deleteAllOrg: function(){
this.get('store').findAll('org').then(function(record){
record.forEach(function(rec) {
console.log("Deleting ", rec.get('id'));
rec.deleteRecord();
rec.save();
});
record.save();
});
}
Run Code Online (Sandbox Code Playgroud)
知道如何修改程序,以便可以立即删除所有记录吗?
我也尝试过model.destroy()和model.invoke('deleteRecords')但它们不起作用.
任何帮助是极大的赞赏.谢谢你的帮助!
cho*_*per 16
deleteRecord()内部调用forEach将打破循环.您可以通过将删除代码包装在如下Ember.run.once函数中来修复它:
this.get('store').findAll('org').then(function(record){
record.content.forEach(function(rec) {
Ember.run.once(this, function() {
rec.deleteRecord();
rec.save();
});
}, this);
});
Run Code Online (Sandbox Code Playgroud)
看到这个jsBin.