验证形式字段是否小于角反应形式中的另一个

时间:2020-09-14 11:56:33

标签: typescript angular8

我有一个名为LDC的字段,窗体上的其他两个字段是limit1和limit2。如果limit1或limit2大于LDC,并且limit1 + limit2大于LDC,我想显示一条错误消息。我尝试编写一个自定义验证器,但是它不起作用。 我读到有关rxwebvalidators的信息,是否可以为这些验证器编写自定义错误消息? 任何帮助,将不胜感激。预先感谢

1 个答案:

答案 0 :(得分:0)

一种简单的方法是将布尔值声明为:

displayError = false;

然后在每个字段中使用valueChanges:

limit1.valueChanges().pipe(
   distinctUntilChanged()
).subscribe(value => {
  if (value + limit2.value < LDC) { // i dont know what is LDC
    this.displayError = true;
  } else {
    this.displayError = false;
  }   
});

与limit2相同(假设它们是FormControls)。

然后,您可以在模板中将ngIf指令用作:

<div>
  <input .... >
  <span *ngIf="displayError">Error message</span>
</div>