验证表单字段是否小于 angular 反应表单中的另一个

validate if form field is less than the other in angular reactive forms

我有一个名为 LDC 的字段,表单上的其他两个字段是 limit1 和 limit2。如果 limit1 或 limit2 大于 LDC,我想显示一条错误消息,如果 limit1+limit2 大于 LDC,我也想显示错误消息。我尝试编写自定义验证器,但不知何故不起作用。 我阅读了 rxwebvalidators 是否可以为这些验证器编写自定义错误消息? 任何帮助,将不胜感激。提前致谢

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

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 相同(假设这些是 FormControl)。

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

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