Почему этот маленький угловой модуль не может обновить представление при изменении свойства ng-bind
?Почему AngularJS ng-bind не обновляет вид
<body ng-app="bindExample">
<script>
angular.module('bindExample', [])
.controller('ExampleController', ['$scope', function($scope) {
var vm = this;
vm.name = 'Whirled';
window.setInterval(function(){ vm.name = 'Jon';}, 5000);
}]);
</script>
<div ng-controller="ExampleController as vm">
Hello <span ng-bind="vm.name"></span>!
</div>
</body>
Я ожидаю, что через 5 секунд, то выход изменяется Hello Jon
на это остается на Hello Whirled
. Почему это? Нужно ли мне что-то делать?
Спасибо. Если я вызову AJAX для чтения значения, а затем примените его к модели в моей ресурсной 'success' функции, мне нужно также использовать' $ apply'? – norbertpy
Если вы используете угловую службу $ http для извлечения данных с сервера, вам не нужно вызывать $ scope.apply(); – neilhem
НЕТ, если вы используете угловую службу '$ http' как #neilhem, упомянутую в последнем комментарии, но если вы используете как jquery ajax, вам нужно использовать' $ apply() 'там, чтобы сказать угловое, что есть что-то вне области и необходимо привязать к сфере действия. –