如何在嵌套反应式表单中添加和删除数组?

问题描述 投票:0回答:1

我有一个需要复制的嵌套反应表单数组。出于某种原因,我只是。能够复制数组的一部分。这是代码链接。

嵌套表单数组

您将看到只有输入文件有效,但我的其他字段仅在错误的位置重复。任何帮助都可以。谢谢

angular angular-reactive-forms
1个回答
0
投票

问题在于

initDocument
方法中的以下代码:

this.newDocumentFieldGroup(0);

这会将新的嵌套

FormGroup
添加到
documentFields
FormArray
中,作为
documents
FormArray
的第一个元素。

您必须在

FormGroup
documents
中提供
FormArray
的最新索引。请记住数组索引从 0 开始。

initDocument() {
  this.documents.push(this.newDocument());
  let documentIndex = this.documents.length - 1;
  this.newDocumentFieldGroup(documentIndex);

  //console.log(this.documentFields(0).controls.length);
}

演示@StackBlitz

© www.soinside.com 2019 - 2024. All rights reserved.