Angular 7反应性表单数组-计算表单值

时间:2019-05-22 08:15:17

标签: angular angular7 angular-reactive-forms

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

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

1 个答案:

答案 0 :(得分:1)

尝试一下:

<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