2017-07-29 132 views
0

我正在使用一個主板系統。其中有卡需要顯示以及卡可以拖放到板上。angularjs ng-repeat對於繁重的數據非常緩慢

有行和列可能在板n個和卡可以拖放下降到任何行和列

所以我已經實施它與嵌套ng重複它是正常工作。

但是當有超過300張卡在機上時,需要花費很多時間來加載大約8000ms到9000ms。

由於數據更多並且使用嵌套的ng-repeat,所以有很多迭代。

由於需要在單板上顯示所有卡,因此無法進行延遲加載。

因此,在這種情況下,我該如何提高使用ng-repeat或任何其他替代方法渲染電路板的性能。

任何幫助,將不勝感激。

感謝

回答

2

的一種方式,以提高納克重複性能與軌道使用它的:

<div ng-repeat="item in array track by item.property"> </div> 

或者試試這個,如果該項目屬性不是唯一的:

<div ng-repeat="item in array track by $index"> </div> 
+0

我已經使用

我正在嘗試

+0

我試過

它將時間從9000ms縮短到4000ms到5000ms。 我檢查了所有過濾器,並且每個人都快速響應,但需要時間重新渲染。 –

+0

您可以使用AngularJS中的一次性綁定,如下所示:'

{{::item.property}}
'當您使用此語法時,對對象所做的更改將不會更新。從文檔中一次性綁定非常簡單:一次性表達式一旦穩定就會停止重新計算,如果表達式結果是非未定義的值,則會在第一次摘要後發生。 – Ardit