在AngularJS中,您可以使用指令设置输入以使用
延迟验证<script defer src="https://use.fontawesome.com/releases/v5.0.9/js/all.js"></script>
这样做:当输入改变时,在输入验证有效/无效之前给出500毫秒的延迟。
在Angular2 +中,这似乎更难。我想我可以通过observables听取更改并以这种方式更新验证,但是如何告诉初始输入不验证?
答案 0 :(得分:2)
由于Angular 5.0可以更好地控制何时运行表单验证。您可以使用blur
选项将验证配置为在submit
或updateOn
上运行。
将在窗体控件上运行验证器模糊:
new FormControl(null, {
updateOn: 'blur'
});
在提交表单后运行验证程序:
new FormGroup({
fistName: new FormControl(),
lastName: new FormControl()
}, { updateOn: 'submit' });
将在窗体控件上运行验证器模糊:
<input [(ngModel)]="firstName" [ngModelOptions]="{updateOn: 'blur'}">
在提交表单后运行验证程序:
中的更多信息正如提及的评论中的某人,您也可以订阅表单值更改流,但如果您对延迟表单验证感兴趣,则应该查看updateOn
属性。