Я делаю запрос AJAX для данных, которые используются в представлении для генерации списка. Мне нужно знать, когда обновляется область $, и когда представление отображается после успешного ответа, так что я могу динамически устанавливать некоторые начальные значения и некоторые обработчики событий для списка.
настоящее время я использую следующий код, который не делает трюк:
responsePromise.success(function (data, status, headers, config) {
var slideInfos = data;
$scope.slideInfos = slideInfos;
setInitialSliderValues();
});
В то время я называю setInitialSliderValues () вид еще не обновляется.
При попытке использования следующим я получаю сообщение об ошибке «$ дайджеста уже в процессе»:
responsePromise.success(function (data, status, headers, config) {
var slideInfos = data;
$scope.$apply(function() {
$scope.slideInfos = slideInfos ;
setInitialSliderValues();
}
});
Как я могу быть абсолютно уверен, что изменения в данных вступили в силу на странице без использования таймер, который проверяет изменения, которые я ожидаю.
Используйте '$ таймаут (функция() { setInitialSliderValues ();} )' вызывается точным после текущего дайджеста цикла закончить –
вы используете 'Jquery ajax' внутри углового? –