在angular中,通常我们用input创造数据。获取数据用ng-model,但当数据发生变化时,常常用ng-change来获取数据,但是ng-change有一个严重的缺点,不会把新的数据及时刷新到页面上。这里,我们就要使用$watch()了。
我们做一个实验。
app.controller('test',function($scope,$interval){
var time
$scope.a=10;
//定时器,每次-1
time=$interval(function(){
$scope.a--;
if($scope.a==0){
$interval.cancel(time);
}
},1000)
//检测$scope.a
$scope.$watch($scope.a,function(){
$scope.a
},true)
})
//html
{{a}}
这样的展示在页面也会是最新的值。