2013-11-22 40 views
4

當我在Route服務中使用ngRepeat時,Angular正在泄漏DOM元素。如何使用angular.js ngRepeat和Routes處理內存泄漏?

我們的應用程序有一個搜索結果表。當用戶單擊分頁控件上的下一個按鈕時,應用程序將更改路線。因此http://website/results/1將變爲http://website/results/2這會導致angular在調用編譯時清除緩存的ngRepeat指令。緩存中的DOM元素和$ scope對象存在並泄漏。

你可以看到同樣的問題上http://docs.angularjs.org/api/

導航到網站上面,開放的開發工具,並啓動時間表。然後開始點擊左側的導航。從頂部開始並持續點擊,直到到達導航的底部,然後再返回。

您將看到DOM節點數量只是保持增長,並且從未完全收集垃圾收集。

這是一個真正的問題。

我的問題是:現在有人如何解決這個問題嗎?有沒有解決辦法?

另外,作爲一個方面說明,但仍然相關的是,角似乎泄漏包裝內聯表達式的每個元素。 {{objectOnTheScope}}

回答