ng-change与之前的值进行比较

时间:2016-04-24 16:10:16

标签: javascript angularjs

<input ng-model="name" ng-change=change() placeholder="name">
<button ng-click="check()"> 
$scope.name = 'Default';

$scope.change = function(i){
console.log(i)
}

如何使用angularjs中的ng-change检查$ scope.name是否仍然等于Default

1 个答案:

答案 0 :(得分:1)

<input ng-model="name" ng-change=change() placeholder="name">
<button ng-click="check()"> 

$scope.name = 'Default';
var oldV = $scope.name;
$scope.change = function(i){
    if($scope.name === oldV) {
        console.log('same');
    } else {
        // update oldV here to latest if you want
    }
}

但为了这个目的,$ watch应该更好。 我认为ng-change不会跟踪你的变量。 https://docs.angularjs.org/api/ng/type/ $ rootScope.Scope