更新Angular中嵌套数组中的对象

时间:2018-11-04 12:42:43

标签: angular typescript nested-forms angular-reactive-forms

我有一个嵌套的表单:

this.contactForm = this.fb.group({
  name: ['', Validators.required],
  description: '',
  comment: '',
  phone: '',,
  addresses: this.fb.array([])
});

get addresses() {
 return this.contactForm.get('addresses') as FormArray;
}

我正在通过ng-bootstrap打开一个模式。因此,我能够用正确的数据填充模态。 我也可以正确删除它。 但是一旦打开模态并编辑值,我将保存一个新对象而不是对其进行更新。

我使用服务在组件之间进行通信:

父母:

this.companyService.addressCompanySubject.subscribe(
  data => {
    const address = this.fb.group({
      addressType: data.addressType,
      street: data.street,
      zip: data.zip,
      city: data.city,
      country: data.country
    });
    this.addresses.push(address);
  }
);

孩子:

sendAddress() {
this.address = new Address(this.addressForm.value);

this.companyService.addCompanyAddress(this.address);

this.activeModal.close();

}

如何正确编辑数组中的对象?

0 个答案:

没有答案