其中包含一堆必填字段的表单。在这里,我能够完美地处理所有验证和错误消息。但是,当我清除表单时,现在显示错误消息,显示诸如“字段为必填字段”之类的必填字段。 这是我的预期行为,当清除表单时,表单只是进入初始阶段而不验证任何字段。
我没有任何想法可以解决这个问题,因此任何想法或建议对我都有帮助。预先感谢。
目前,我正在使用反应式表单并通过通用验证器来处理如下所示的验证。
答案 0 :(得分:0)
您需要在以下情况下显示错误消息:
(1)字段AND上有错误
(2)场地变脏或被触摸-换句话说,当场地未被篡改时。最初,一个字段不脏也不被触摸。更改值时,该值将变脏。当您将重点放在字段上,然后又失去焦点时,就会被感动。我相信,按照您描述的方式重设表格应该可以使所有字段再次保持整洁,并且保持不变。
像这样管理肮脏和感动:
<label>
First Name:
<input formControlName="firstName" required> <!-- required is optional -->
</label>
<div *ngIf="firstName.invalid && (firstName.dirty || firstName.touched)" class="alert alert-danger">
<div *ngIf="firstName.errors.required">Name required</div>
<div *ngIf="firstName.errors.minlength">Name min length is 3</div>
</div>