2016-10-22 17 views
0

https://github.com/PatrickO10/meetUp/blob/master/index.html#L73

我在这个领域是新的,并阅读一个代码。

我看不懂logForm.$invalid.$setValidity这里。我无法从互联网上找到任何有关它的信息。互联网上的setvalidity有两个周长,但这里没有。

而且invalid这里https://docs.angularjs.org/api/ng/type/form.FormController已被布尔逻辑为什么setvalidity?你为什么不使用ng-disabled="logForm.$invalid"

你能告诉我吗?谢谢。

<div class="modal fade login" tabindex="-1" role="dialog" aria-labelledby="loginModelLabel" ng-controller="LoginCtrl as logCtrl"> 
    <div class="modal-dialog" role="document"> 
     <div class="modal-content"> 
      <div class="modal-header primary-color-dark-bg"> 
       <button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">&times;</span></button> 
       <h4 class="modal-title" id="loginModelLabel">Login</h4> 
      </div> 
      <div class="modal-body primary-bg"> 
       <form class="row form-horizontal" id="loginForm" ng-submit="logCtrl.login(user)" name="logForm"> 
        <label for="logEmail" class="col-xs-12 col-md-6 margin-top"> 
         <span class="pad-right">Enter your email</span> 
         <input type="email" id="logEmail" ng-model="user.email" class="form-control" placeholder="[email protected]" required autocomplete="email" autofocus> 
        </label> 
        <label for="logPass" class="col-xs-12 col-md-6 margin-top"> 
         <span>Enter your password</span> 
         <input type="password" id="logPass" ng-model="user.password" class="form-control" placeholder="Enter your password" required> 
        </label> 
        <div class="col-xs-12 margin-top" ng-show="loginError"> 
         <p class="invalidPass">Login Fail! {{loginErrMsg}}</p> 
        </div> 
        <label class="col-xs-12 margin-top"> 
         <input id="submitLogin" type="submit" value="Login" ng-disabled="logForm.$invalid.$setValidity"> 
        </label> 
       </form> 
      </div> 
      <div class="modal-footer primary-color-dark-bg"> 
       <button type="submit" class="btn btn-primary" data-dismiss="modal">Close</button> 
      </div> 
     </div> 
     <!-- /.modal-content --> 
    </div> 
    <!-- /.modal-dialog --> 
</div> 

回答

0
<input id="submitLogin" type="submit" value="Login" 
      ng-disabled="logForm.$invalid.$setValidity"> 

你基本上是说输入是ng-disabled当表单是$invalid。即在这里您将输入设置为$invalid,这会使输入被禁用。

+0

你能找到一些描述这个setvalidity的文档吗? –

+0

看看这个链接,它提供了很多$ setValidity的例子。 http://ng-learn.org/2014/03/Writing_Custom_Validations_Part4/ – Thalaivar

+0

而这个链接也是... http://blog.thoughtram.io/angularjs/2015/01/11/exploring-angular-1.3-validators- pipeline.html – Thalaivar