如何从Angular 6中的组件更新formArray的值

时间:2018-10-20 20:13:09

标签: javascript angular

大家好,请问我在从angular 6组件更新formArray中的值时遇到问题。我尝试使用setValue()和patchValue(),但没有一个在工作。下面是我的代码

 this.form = this._formBuilder.group({
       locationRequests: this._formBuilder.array([
          this._formBuilder.group({
          location: '',
          item_category: '',
          items: '',
          quantity: '',
          packaging: '',
          unit_of_measurement: '',
    });
        ])
    });

我想尝试为组件中的每个字段设置值

this.form.patchValue({
 locationRequests: this._formBuilder.array([
          this._formBuilder.group({
          location: 'New York',
          item_category: 2,
          items: 1,
          quantity: 500,
          packaging: 1,
          unit_of_measurement: 'PCS',
}
});

我也尝试过使用setValue函数仍然无法正常工作。我已经在网上搜索过,所有答案都无效。

1 个答案:

答案 0 :(得分:1)

在修补时使用它。

this.form.patchValue({ locationRequests: [ { location: 'New York', item_category: 2, items: 1, quantity: 500, packaging: 1, unit_of_measurement: 'PCS', }] });

修补值时无需指定this._formBuilder.groupthis._formBuilder.array