我正在使用$asyncValidators
来验证字段,但希望仅在字段失去焦点而不是每次更改时触发它。这是可能的,还是我必须使用$asyncValidators
以外的其他东西?
使用$asyncValidators
的代码示例(取自documentation)
ngModel.$asyncValidators.uniqueUsername = function (modelValue, viewValue) {
var value = modelValue || viewValue;
// Lookup user by username
return $http.get('/api/users/' + value).
then(function resolved() {
//username exists, this means validation fails
return $q.reject('exists');
}, function rejected() {
//username does not exist, therefore this validation passes
return true;
});
};
答案 0 :(得分:1)
我认为您可以使用ngModelOptions指令来实现这一目标。
ng-model-options="{ updateOn: 'blur' }"
您可以强制您的模型进行评估"仅限某些预定义事件。
在您的情况下,您希望在离开字段时对其进行评估,以及blur
事件。