仅当出现值时才验证角度形式字段中的最小数量

时间:2019-07-18 13:34:12

标签: angular angular-forms angular8

我正在用角度材料和表格编写一个角度为8的Web应用程序。

我用FormGroup创建了一个FormBuilder,并向这些字段添加了验证。

我有一个Validators.min(0)字段。事实是该字段不是必填字段,因此,仅当有一个值开始时,我才想验证该值是否为最小零。

我该如何实现?

嗯。好吧,这就是我建立表格的方式

  this.queryForm = this.formBuilder.group({
            ...
            durationLongerThenInSec: ['', Validators.min(0)],
        });
    }

谢谢!

1 个答案:

答案 0 :(得分:0)

由于您没有Validators.required,因此所需的验证将不会应用于您的表单控件。 您应该尝试将Validators.min(0)添加到表单控件中,它将验证它是否脏了并满足最小值规则:

this.queryForm = this.formBuilder.group({
            ...
            durationLongerThenInSec: ['', [Validators.min(0)]],
        });
    }

还要确保模板上有错误显示,以便在durationLongerThenInSec.errors.min可用时处理并显示错误消息:

<p *ngIf="durationLongerThenInSec.errors?.min">error message</p>