![](/img/trans.png)
[英]Angular $watch old value always equals new value when used to watch an li
[英]angular $watch old value and new value are the same
我的目的是觀察 $rootScope 中的值,並在值更改時調用偵聽器方法。 但是,我發現如果值沒有改變,監聽器也會被調用。 有沒有辦法觀察一個值是否改變了角度?
app = angular.module('myApp',[]);
app.controller('MyCtrl', function($rootScope, $timeout){
$rootScope.markers = 1;
$rootScope.$watch('markers', function(newValue, oldValue){
console.log('being watched oldValue:', oldValue, 'newValue:', newValue);
});
$timeout( function() {
$rootScope.markers = 1;
}, 500);
});
$watch
在創建控制器時運行,然后在分配值時運行,因此您需要檢查$watch
函數內的相等性:
if(oldValue != newValue) {...}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.