Javascript 从backbone.js集合中删除每个模型
我试图遍历一个主干集合,并将每个项移动到另一个集合。 在遍历和删除项目时,只有一半的项目被删除Javascript 从backbone.js集合中删除每个模型,javascript,backbone.js,Javascript,Backbone.js,我试图遍历一个主干集合,并将每个项移动到另一个集合。 在遍历和删除项目时,只有一半的项目被删除 app.cloud.each(function(model){ app.cloud.remove(model); app.tail.add(model); }) 有人能提出解决这个问题的好办法吗?理想情况下,我不想让代码尽可能可读。在迭代集合时修改集合。我不太清楚,但我敢说这会产生奇怪的结果 一个可能的解决方法是改变你的方法,首先你通过迭代app.cloud将所有内容添加到app.t
app.cloud.each(function(model){
app.cloud.remove(model);
app.tail.add(model);
})
有人能提出解决这个问题的好办法吗?理想情况下,我不想让代码尽可能可读。在迭代集合时修改集合。我不太清楚,但我敢说这会产生奇怪的结果
一个可能的解决方法是改变你的方法,首先你通过迭代
app.cloud
将所有内容添加到app.tail
,然后清除app.cloud
,你在迭代集合时正在修改它。我不太清楚,但我敢说这会产生奇怪的结果
一个可能的解决方法是改变你的方法,首先你通过迭代
app.cloud
将所有东西添加到app.tail
,然后清除app.cloud我不确定为什么要将所有模型移动到一个新的集合中,但是。。。我建议你不要自己去迭代,让主干来处理。我还没有尝试过以下方法,但应该可以
app.tail.add(app.cloud.toJSON());
app.cloud.reset();
为了更安全,当app.tail中触发添加事件时,您可能希望重置app.cloud。我不确定希望将所有模型移动到新集合的原因,但。。。我建议你不要自己去迭代,让主干来处理。我还没有尝试过以下方法,但应该可以
app.tail.add(app.cloud.toJSON());
app.cloud.reset();
为了更安全,当app.tail中触发add事件时,您希望重置app.cloud