Angular 7 Reactive Form Array - 计算表格值

Angular 7 Reactive Form Array - Calculate Form values

我一直在创建一个计费应用程序,我将在其中捕获项目名称和价格。我想为该项目提供折扣,因此我将获得百分比折扣和美元文本框折扣。在某些情况下,我可以输入百分比折扣或美元价值折扣,因此我想在 运行 时间显示它们。例如,如果我以美元输入折扣,那么我必须以百分比显示折扣值。你能帮我解决这个要求吗?

我使用具有 Angular 和反应形式的 Stackblitz 创建了一个示例应用程序 - https://stackblitz.com/edit/github-hayn68-yjqorz

试试这个:

<td class="form-group">
      <input #perc type="text" class="form-control" formControlName="discountInPercentage" 
      (change)="percChanged(i, perc.value)">
</td>

TS

percChanged(i, val){
    this.itemForm.value.items[i].discountInDollar = this.itemForm.value.items[i].rate/100*val;
    this.itemForm.controls['items'].setValue(this.itemForm.value.items);
    console.log(this.itemForm.value.items[i].discountInDollar);
}

更改 %Discount 值,您应该会看到输出。 Stackblitz example