在 angular 4 中的行内修补值

patching value inside of rows in angular 4

如何修补行内的值。我有这个 unit_price,如果我 select 在 select 选项中输入特定成分,它会在 unit_price 的输入字段中修补它?请参阅此 link 以获取代码 SEE THIS LINK

onSelectIngredient(event): void {
    const formData ={
      ingredient_id: event.target.value
    }
    console.log(formData);
    this.patchValues();
  }

patchValue 方法进行以下更改。

 patchValues(id,i) {
    let x = (<FormArray>this.addForm.controls['rows']).at(i);
    console.log(x);

    x.patchValue({
      unit_price: this.ingredients[id - 1].price
    });
  }



  onSelectIngredient(event,i): void {
    const formData = {
      ingredient_id: event.target.value
    }
    console.log(formData,i);
    this.patchValues(event.target.value,i);
  }

模板更改

<select (change)="onSelectIngredient($event,i)" class="form-control" formControlName="ingredient_id"> // to get the row id

link

中的工作示例