[英]Removing each model from a backbone.js collection
我正在嘗試遍歷主干集合並將每個項目移動到另一個集合。 在迭代和刪除項目時,只有一半的項目被刪除。
app.cloud.each(function(model){
app.cloud.remove(model);
app.tail.add(model);
})
任何人都可以提出一個解決這個問題的好方法嗎? 理想情況下,我不想讓代碼盡可能地可讀。
您在迭代集合時正在修改集合。 我不太了解骨干,但我敢說這會產生奇怪的結果。
一個可能的解決方法是更改您的方法,以便首先通過迭代app.cloud
將所有內容添加到app.tail
,然后清除app.cloud
我不確定要將所有模型移動到新系列的原因,但是......我建議不要自己迭代它 - 讓 Backbone 來處理它。 我沒有嘗試以下但應該工作。
app.tail.add(app.cloud.toJSON());
app.cloud.reset();
為了更安全,您希望在 app.tail 中觸發add事件時重置app.cloud。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.