我有一个在提交表单时调用的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
的待处理验证?这些“待处理”的验证永远不会完成。
最佳答案
不,实际上,根据我的经验,如果您的任何自定义验证器返回“未定义”(即使不存在任何 asyncValidators), $pending 也会在表单上设置
因此,要解决此问题,请确保所有验证器返回 true/false
关于javascript - 在 Angular 中, $pending 仅在 $asyncValidators 的表单上设置吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29927135/