ng-change для сравнения с предыдущим значением

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

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

Как проверить $ scope.name по-прежнему равен Default используя ng-change в angularjs?

Теги:

1 ответ

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

  • 0
    почему мне нужно использовать $ watch, так как я делаю все в той же области видимости?
  • 0
    Что делать, если мне нужно более одного входа? использовать нг-изменения для всех из них?
Показать ещё 3 комментария

Ещё вопросы

Сообщество Overcoder
Наверх
Меню