角反应形式输入验证在负载上不起作用

时间:2018-10-18 20:11:05

标签: angular angular-reactive-forms

我对反应形式验证有点陌生,试图在页面加载时实现输入验证,我有一个简单的输入字段,我需要在页面加载时进行验证,而不是手动进行。需求是我具有带有一堆输入字段的编辑表单的地方,我正在其中寻找每个字段的maxLength验证。我尝试在patchValue / setValue上使用updateValueAndValidity,但不会显示错误,非常感谢您的帮助。

注意:我需要在页面加载时显示错误

Stackblitz

1 个答案:

答案 0 :(得分:1)

您的StackBlitz示例几乎是正确的。在表单中设置数据后,您无需调用任何其他方法,例如.updateValueAndValidity(),您只是在错误地检查错误状态:

<span *ngIf="sampleForm.get('inputTxt').hasError(maxLength)">
  Max(10) letters reached!!!
</span>

应为:

<span *ngIf="sampleForm.get('inputTxt').hasError('maxlength')">
  Max(10) letters reached!!!
</span>

有关工作示例,请参见此更新的StackBlitz:https://stackblitz.com/edit/angular-2fvyqj