提交表单后如何显示所有控制错误?

时间:2019-04-27 09:34:57

标签: angular vmware-clarity

提交表单后如何立即显示所有控制错误?

我尝试将clrForm与clr-control-error一起使用,但是错误仅在输入处于触摸状态时显示。

<clr-control-error *clrIfError="'required'">An email address must be provided.</clr-control-error>
<clr-control-error *clrIfError="'invalidEmailAddress'">The email address is invalid.</clr-control-error>

这是Stackblitz网址:https://stackblitz.com/edit/clarity-light-theme-v1-0-rdq5tq

在堆叠闪电战中,有两种形式:一种是清晰度形式,另一种是本机角形式。 预期的结果是,当您单击“提交”按钮时,它应显示所有错误消息。它适用于本机角度形式,因为我可以控制何时显示错误,但不能控制清晰性形式。清晰度表单仅在模糊或触摸表单控件的状态时显示错误。有没有办法强制显示错误帮助程序消息?

1 个答案:

答案 0 :(得分:1)

v1的清晰性文档在“重置并强制验证”部分https://v1.clarity.design/forms下显示了如何执行此操作。在v1中使用markAsDirty(),而在v2中使用markAsTouched()

基本上,您会获得对ClrForm的引用并调用该方法(在v2中,它将为this.form.markAsTouched()

@ViewChild(ClrForm) form: ClrForm;

validate() {
  this.form.markAsDirty();
}