【发布时间】:2013-03-17 21:26:06
【问题描述】:
我正在尝试在 AngularJS 中设置手表,但我显然做错了什么,但我无法完全弄清楚。手表在立即页面加载时触发,但是当我更改观察值时它不会触发。作为记录,我还在匿名函数上设置了监视以返回监视的变量,但结果完全相同。
我在下面构建了一个最小的示例,在控制器中执行所有操作。如果它有所作为,我的实际代码与指令挂钩,但两者都以同样的方式失败。我觉得我必须缺少一些基本的东西,但我只是看不到它。
HTML:
<div ng-app="testApp">
<div ng-controller="testCtrl">
</div>
</div>
JS:
var app = angular.module('testApp', []);
function testCtrl($scope) {
$scope.hello = 0;
var t = setTimeout( function() {
$scope.hello++;
console.log($scope.hello);
}, 5000);
$scope.$watch('hello', function() { console.log('watch!'); });
}
超时有效,hello 增加,但手表不触发。
【问题讨论】: