Angularjs验证中“ng-model”属性的意义是什么?

时间:2015-10-14 03:55:52

标签: javascript angularjs debugging angular-ngmodel

为什么我们需要使用ng-model来确保验证有效。例如,在this代码中,如果我删除ng-model属性,则验证会中断,但只要ng-model属性存在,无论属性的value是什么,它都会有效。那么ng-model在这种情况下有什么意义呢?为什么我必须使用虽然它的价值没有太大的区别?

1 个答案:

答案 0 :(得分:2)

ng-model的值使所有的差异。然而,你正确断言的不是初始值似乎是无关紧要的。只要在输入框中输入内容,Angular会立即将值赋给分配给ng-model的变量。

随后,ng-model的值是Angular的验证码正在验证的内容!数据必须以某种方式从您的手指到代码,并且ng-model

让我们说你输入了一个带有ng-model的输入框:"我太酷了。"

<form ng-controller="SuperController">
  <input ng-model="somethingAwesome" />

  <button ng-click="someAction()">Click me!</button>
</form

在您的控制器中,您可以在$scope上访问该值。

function SuperController ($scope) {
  $scope.someAction = function () {
    console.log($scope.somethingAwesome) 
    // "I am so cool."
  }
} 

如果您设置控制器内的值,您的输入框将显示该值。

function SuperController ($scope) {
  $scope.somethingAwesome = 'You are so cool!'
}

Angular的验证函数会读取$scope上的内容的值,其中包含视图中具有指令ng-model的项目的值。

https://docs.angularjs.org/api/ng/directive/ngModel