Показать сообщение отдельно
  #2 (permalink)  
Старый 10.05.2015, 22:02
Интересующийся
Отправить личное сообщение для artemdemo Посмотреть профиль Найти все сообщения от artemdemo
 
Регистрация: 07.11.2014
Сообщений: 11

Нет простого решения. Нужно провести "комплекс мероприятий"

Самый очевидный путь - пробовать использовать one-time binding - тогда данные будут выводиться один раз и больше не будут проверяться на изменения.
Так же если выводите большие списки через ng-repeat, то используйте track by - тогда ангулар не будет добавлять свой индекс, что значительно ускорит работу.

В принципе можно и "отцепить scope" например по команде обнулить все вотчеры а потом вернуть их, хотя я сам и не пробовал:

var watchers;

scope.$on('suspend', function () {
  watchers = scope.$$watchers;
  scope.$$watchers = [];
});

scope.$on('resume', function () {
  scope.$$watchers = watchers;
  watchers = null;
});
Ответить с цитированием