角度控制器值和模型值不同

时间:2016-01-23 18:42:32

标签: angularjs model-view-controller angularjs-scope

我想对2封电子邮件进行简单比较。

我很好奇Controller和模型之间的数据同步方式。 我附上了一个屏幕截图,您可以看到输出和实际视图/模型值的差异。

Difference between the controller values and model values

ng-keydown="equal(newNote.email)"用于输入字段。

  • 这种行为的原因是什么?
  • 在Angular的引擎下是否存在某种未决的$ digest周期?
  • 我怎样才能做到这一点?

提前致谢!

1 个答案:

答案 0 :(得分:0)

我认为您在更改事件上打印(console.log)值并打印旧值。

您可以使用观察者来比较值

$scope.watch('$scope.email2', function(oldval, newval){
        if ($scope.email1 == newval){
              dosomething();
        }
});

或者您可以像这样使用ng-keyup

<input type='text' ng-model='email2' ng-keyup='validate_email()' />

并在控制器中

$scope.validate_email = function(){
    if ($scope.email1 == newval){
         dosomething();
    }
}