Эта ошибка возникает, когда модель приложения становится нестабильной, и каждый цикл $digest
вызывает изменение состояния и последующий цикл $digest
.AngularJS обнаруживает эту ситуацию и не позволяет бесконечному циклу заставить браузер перестать отвечать на запросы.
Одной из распространенных ошибок является привязка к функции, которая генерирует новый массив при каждом его вызове.Например:
<div ng-repeat="user in getUsers()">{{ user.name }}</div>
$scope.getUsers = function() {
return [ { name: 'Hank' }, { name: 'Francisco' } ];
};
Решение состоит в том, чтобы вернуть тот же объект массива, если элементы не изменились.
var users = [ { name: 'Hank' }, { name: 'Francisco' } ];
$scope.getUsers = function() {
return users;
};
Для получения дополнительной информации см.