2016-12-05 95 views
0

我從幾個新聞來源選擇新聞約。每5-10分鐘。我使用AngularJS 1.5和ng-repeat非常適合我從服務器填充到DOM的500多個新聞項目的多個列表。麻煩的是,儘管我已經使用了track by,但我仍然有很高的CPU使用率,只要我在這個列表上使用過濾器。AngularJS ngRepeat Watchers Paradox

我試過bindonce庫即bindonce ng-repeat沒有明顯的收益。我還使用了AngularJS 1.3+特性::,它可以工作,但之後服務器更新不會替換舊內容,因爲::會使內容在過程中不可變。

我想知道有沒有辦法阻止AngularJS在下一次從服務器獲取新內容時觀看ng-repeat UNTIL中的項目列表(這是警告)?

+0

試試這個http://blog.thoughtram.io/angularjs/2014/12/22/exploring-angular-1.3-disabling-debug-info.html – nmanikiran

+0

也保留一次綁定ng-repeat變量不適用你的情況列表 – nmanikiran

回答

0

我建議:

  1. 保持::一次性的結合,其中可能的,特別是ng-repeat變量。
  2. 加載數據並保存在服務中。
  3. 獲取數據後,使用$route.reload()刷新控制器。

您使用一次性綁定這樣,但你的觀點將與數據被刷新,因爲整個控制器將被刷新。