如果你看一下在開發工具的待辦事項應用程序,一個新的ToDoView是內APPVIEW每次創建一個新的待辦事項(模型)創建的。但是我沒有看到ToViews的「集合」。我問這是因爲我認爲一個視圖在模型被銷燬時被銷燬,但無法找到參考。 謝謝都是骨幹訪問量持續
1
A
回答
0
視圖通常是內存中的結構(如DOM本身),所以只要你的JavaScript代碼持有對它們的引用(因此使它們不適合瀏覽器的JS引擎進行垃圾回收),它們將繼續存在。關上窗戶,他們走了。點擊指向不同頁面的鏈接,它會進行整頁加載,然後他們就消失了。
然而,視圖不自動響應被破壞的典範。如果您希望模型在通過骨幹刪除時從DOM中消失,您必須手動連接this.listenTo(this.model, 'destroy', this.remove.bind(this))
之類的東西。另外,正如你已經注意到的,當你想渲染一個模型集合,爲每個模型創建一個新視圖,渲染它,然後不保留對其的引用時,這很常見。當集合發生變化時,最外層的元素被清空,新的視圖實例被創建和渲染,因此舊的視圖實例有資格進行自動垃圾收集。因此,JavaScript將清理那些舊的視圖,但這不會對相應的模型產生任何影響,也不會觸發任何AJAX請求。
相關問題
- 1. 骨幹視圖訪問方法變量
- 2. 骨幹增量問題
- 3. 訪問嵌套的骨幹收集
- 4. 在骨幹集合中訪問模型
- 5. 骨幹集合模型不可訪問
- 6. 骨幹 - 我正確訪問此模型?
- 7. 骨幹triggerEvents變量
- 8. 骨幹model.destroy與MongoDB持久
- 9. 在骨幹視圖中訪問方法變量(解析視圖)
- 10. 混合谷歌地圖與骨幹網訪問量
- 11. 想從功能訪問變量來渲染功能骨幹
- 12. 骨幹delegateEvents問題
- 13. 對所有視圖都支持的骨幹視圖事件
- 14. 骨幹收集作爲鏈表和持續模型
- 15. 骨幹這是undefined
- 16. 骨幹視圖是否總是需要骨幹模型?
- 17. 骨幹全局變量
- 18. 骨幹js批量保存
- 19. OAuth和訪問令牌持續問題
- 20. 骨幹驗證問題
- 21. uploadify +骨幹事件問題
- 22. 骨幹視圖問題
- 23. 骨幹深克隆問題
- 24. 骨幹js集合問題
- 25. 骨幹安全問題
- 26. 骨幹收集問題
- 27. 骨幹延長問題
- 28. 骨幹
- 29. 骨幹
- 30. 骨幹
仍然困惑。如果模型數據更改視圖必須更新。如果它不再存在,它會如何更新?看來,模型是唯一可以在這裏迭代的真實對象。 – mike628 2013-03-20 00:44:44
視圖仍然「真的存在」,並且如果您的事件已正確連接,那麼當模型的數據更改時,該模型的視圖將響應這些事件並相應地更新其DOM元素。事情有一次,視圖有對其模型的引用,通常沒有任何令人信服的理由來保存視圖列表,因爲如果您只是操作模型,則事件綁定將執行視圖並且視圖將自動更新。所以如果你喜歡,你可以繼續引用你的觀點,有時候你需要,但是你經常不需要。也許別人可以更好地解釋 – 2013-03-20 00:58:29