angularjs中使用$scope.$watch监控对象模型的变化

如果对象模型发生变化时,可以使用$scope.$watch监控变化

<html ng-app="myApp">
<head>
<title>angularjs-demo</title>
<script type="text/javascript" src="lib/angularjs/angular.min.js" charset="utf-8"></script>
</head>
<body ng-controller="ctrl">
<input type="text" ng-model="text1" ng-model-options="{ updateOn: 'blur' }" />
<div>输入框内容改变次数:{{count}}</div>
</body>
<script type="text/javascript">
var app = angular.module('myApp', [])
.controller('ctrl', function($scope){
    $scope.count = 0;
    $scope.$watch('text1',function(){
        $scope.count++;
    });
});
</script>
</html>

稍微改一下,输出修改前后的内容:

<html ng-app="myApp">
<head>
<title>angularjs-demo</title>
<script type="text/javascript" src="lib/angularjs/angular.min.js" charset="utf-8"></script>
</head>
<body ng-controller="ctrl">
<input type="text" ng-model="text1" ng-model-options="{ updateOn: 'blur' }" />
<div>输入框内容改变次数:{{count}}</div>
<div>原内容:{{content1}}</div>
<div>新内容:{{content2}}</div>
</body>
<script type="text/javascript">
var app = angular.module('myApp', [])
.controller('ctrl', function($scope){
    $scope.count = 0;
    $scope.$watch('text1',function(newValue,oldValue){
        $scope.count++;
        $scope.content1 = oldValue;
        $scope.content2 = newValue;
    });
});
</script>
</html>
原文地址:https://www.cnblogs.com/modou/p/5878240.html