2015-04-28 44 views
1

我有提交表單時調用的ng-submit函數。 我想在任何未決的$ asyncValidators被調用後執行一些操作。

if (myForm.$pending) { 
    var pendingWatch = scope.$watch(function() { 
     return myForm.$pending; }, function(pending) { 
       if (!pending) { 
        pendingWatch(); 
        performSubmit(); 
       } 
     }); 
} else { 
    performSubmit();  
} 

我遇到的問題是myForm。$ pending始終返回一個對象。即使值不是$asyncValidators,而是我添加的自定義$validators。這不是所有輸入都會發生的。

表單有可能有未完成的驗證甚至不是$asyncValidators?這些「未決」驗證從未完成。

回答

3

不,實際上,以我的經驗,$待定還設置形式,如果有自定義的驗證器返回「不確定」(即使不存在任何asyncValidators)

所以要解決這個問題,確保你所有的驗證器返回true/false