updateOn不起作用反应式角度

时间:2019-12-16 13:07:50

标签: angular typescript angular-material reactive-forms

我试图在输入时显示验证消息,但是仅在输入失去焦点时才会显示 我尝试了以下方法:

form: FormGroup = new FormFroup({
    direction: new FormControl("", {
    validators:[Validation.required,Validation.pattern("^[0-9]*$")],
    updateOn: 'change'
}

在html中我不订阅(更改)-也许是问题所在-如果是的话,我该怎么做才能在键入更改时进行验证?

1 个答案:

答案 0 :(得分:1)

通过反验证,验证器将在控制值更改时运行

  form: FormGroup = new FormGroup({
    direction: new FormControl(null, {
       validators: [Validators.required, Validators.pattern("^[0-9]*$")]
    })
  });

如果要检查验证错误以显示消息,则可以检查错误,如果它具有值并具有hasError方法以检查特定错误

模板

<div [formGroup]="form">
  <input formControlName="direction">
  <div *ngIf="form.get('direction').errors">
      <div *ngIf="form.get('direction').hasError('required')">required </div>
      <div *ngIf="form.get('direction').hasError('pattern')">pattern ?? </div>
  </div>

</div>

查看此演示??demo ?