簡體   English   中英

從 backbone.js 集合中刪除每個 model

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM