角度表单验证-获取所有验证错误

时间:2019-03-25 12:31:16

标签: angular angular-forms

我正在寻找以下问题的解决方案:

我有这样的表格:

<form (ngSubmit)="submit(f.form)" #f="ngForm">
  <label>Name</label>
  <input type="text" name="name" required />
  ...
  <button type="submit">Submit</button>
</form>

我这样处理:

submit(f: FormGroup): void {
  Object.keys(form.controls).forEach(key => {

    const controlErrors: ValidationErrors = form.get(key).errors;
    if (controlErrors != null) {
      Object.keys(controlErrors).forEach(keyError => {
      console.log('Key control: ' + key + ', keyError: ' + keyError + ', err value: ', controlErrors[keyError]);
    });
  }
});

因此,我以通用方式将所有验证错误输出到控制台。在此处理中,我需要能够访问输入旁边的标签的值以获取其值而不是键。因此,我可以显示一条消息,要求“ {labelValue}。”。如何获取标签的值。我在寻找通用解决方案时无法将其设为ViewChild,也无法为表单中的每个标签元素都制作一个ViewChild。

0 个答案:

没有答案