$watch
-
3.監(jiān)聽對象
- 1)如果使用$watch監(jiān)聽對象, 要在最后添加一個參數(shù):true,否則監(jiān)聽不到
- 2)默認false, 監(jiān)聽對象地址,如果對象屬性值修改, 地址沒有修改監(jiān)聽不到
- 3)true 引入監(jiān)聽
-
注意:
- 1.$watch()方法, 有返回值, 是個方法,該方法名和返回值變量名相同
- 2.取消$watch監(jiān)聽, 執(zhí)行返回值這個方法,如: unWatch()方法
<body ng-app="app" ng-controller="skController">
<button ng-click="click()">點擊</button>
{{name}}
<input type="text" ng-model="per.name">
<input type="text" ng-model="per.age">
</body>
<script src="angular.js"></script>
<script>
//1.創(chuàng)建模塊
var app = angular.module('app', []);
//2.創(chuàng)建控制器
app.controller('skController', ['$scope',function ($scope) {
$scope.name = '123';
$scope.click = function () {
$scope.name = 'sk666';
//點擊取消監(jiān)聽
unWatch();
}
//1.監(jiān)聽name屬性改變, 獲取新值和舊值
/* $scope.$watch('name', function (newValue, oldValue) {
console.log('newValue= ' + newValue + '--' + 'oldValue= ' + oldValue);
});*/
//2.監(jiān)聽屬性值
/*$scope.$watch('per.age', function (newValue, oldValue) {
console.log('newValue= ' + newValue + '--' + 'oldValue= ' + oldValue);
});*/
/**
3.監(jiān)聽對象
1)如果使用$watch監(jiān)聽對象, 要在最后添加一個參數(shù):true,否則監(jiān)聽不到
2)默認false, 監(jiān)聽對象地址,如果對象屬性值修改, 地址沒有修改監(jiān)聽不到
3)true 引入監(jiān)聽
注意:
1.$watch()方法, 有返回值, 是個方法,該方法名和返回值變量名相同
2.取消$watch監(jiān)聽, 執(zhí)行返回值這個方法,如: unWatch()方法
*/
var unWatch = $scope.$watch('per', function (newValue, oldValue) {
console.log('newValue= ' + newValue + '--' + 'oldValue= ' + oldValue);
}, true);
}]);
</script>