我已将此
stackoverflow answer中给出的程序扩展为具有一次删除所有记录的程序.但是,删除仅在批处理中发生,并且不会一次删除所有内容.
这是我在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(); }); }
知道如何修改程序,以便可以立即删除所有记录吗?
我也尝试过model.destroy()和model.invoke(‘deleteRecords’)但它们不起作用.
任何帮助是极大的赞赏.谢谢你的帮助!
解决方法
在forEach中调用deleteRecord()将打破循环.您可以通过将删除代码包装在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); });
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。