所需的无功控制形式是同时原始无效

问题描述 投票:0回答:2

我在与验证的角度反应形式(从方案中取得,但根据需要引用它)。控制是invlid当窗体启动,而它仍然是原始的,没有感动,不脏。有为什么会发生\如何避免任何的假设呢?

angular angular-validation
2个回答
0
投票

使用,例如

<div *ngIf="name.invalid && (name.dirty || name.touched)"
    class="alert alert-danger">
...
</div>

official docs

为什么检查脏和感动?您可能不希望您的应用程序的用户有机会编辑表单前显示的错误。脏和检查触摸防止错误显示,直到用户做两件事情之一:改变值,转动控制脏;或模糊了形式的控制元件,设置控制到触摸。


0
投票

如在形式所需象下面这标志着所有需要的形式控制

  createFormGroup() {
  return new FormGroup({
    email: new FormControl('', [Validators.required, Validators.email]),
    mobile: new FormControl('', [Validators.required]),
    country: new FormControl('', [Validators.required])
  });
}

所以上述表单控件电子邮件,移动和国家将是无效的,那么该用户将禁用提交按钮或者显示一些信息给用户

所以在这里,你可以显示在用户触动场像下面

  <input formControlName="mobile">
  <span *ngIf="mobile.invalid && mobile.errors.required">
    Mobile is required.
  </span>
  <span *ngIf="mobile.invalid && mobile.errors.invalidNumber">
    Value has to be a number.
  </span>

希望这会有所帮助。

© www.soinside.com 2019 - 2024. All rights reserved.