NgRepeat перезаписывает все элементы после добавления нового элемента?

Если во время выполнения элемент добавляется в массив, который отображается с помощью ngRepeat, он перерисовывает все элементы?

Ответ 1

Поскольку Angular 1.2 у нас есть опция "track by", которая предотвратит повторный рендеринг репитера всеми элементами.

Пример:

ng-repeat="task in tasks track by task.id"

Ознакомьтесь с этим объяснением: http://www.codelord.net/2014/04/15/improving-ng-repeat-performance-with-track-by/

Ответ 2

Да, все элементы перерисовываются.

Фактически, элементы также могут быть перерисованы в другое время.

Пример: При обновлении значения в родительской директиве/шаблоне. Во время цикла $digest Angular будет оцениваться дерево области видимости, и это приведет к переделению дочерних компонентов.

Дополнительная информация: