Я пытаюсь понять, как обрабатывается обновление вида в Angular. Когда я использую встроенную асинхронную функцию, и она обращается к обновлению переменной $ scope, представление не обновляется. Но когда я использую угловую асинхронную функцию, представление обновляется должным образом. Например:
// Example 1: This code updates the store in view
$timeout(function() {
$scope.store = {
name: 'MyName'
}
}, 2000);
// Example 2: This code does not update the store in view
setTimeout(function() {
$scope.store = {
name: 'MyName'
}
}, 2000);
Почему второй пример не обновляет магазин?
Поскольку второй пример не имеет представления о том, что такое цикл дайджеста и не обновляет его (отсюда и причина, по которой преобразуются некоторые нативные функции). – tymeJV
Возможный дубликат [Вид не обновляется в AngularJS] (http://stackoverflow.com/questions/10179488/the-view-is-not-updated-in-angularjs) – PSL
Как я могу обернуть собственную асинхронную функцию в чтобы получить обновление? Я не хочу использовать $ scope.apply(). –