0

我正在使用 Angular 2 中的响应式表单模块来创建一个包含多个嵌套组的表单。

我的“信任”表格有一系列联系人

<FormArray>this.newTrustForm.controls['contact']

“联系人”组中的一个字段是“电子邮件”组的数组,我尝试在这里找到它,但唉,没有。那我去哪里找呢?

<FormArray>this.newTrustForm.controls['contact'].controls['email']

我使用以下内容设置我的表单。

constructor(private _fb: FormBuilder) { }

ngOnInit() {
  this.newTrustForm = this._fb.group({
    ...
    contact: this._fb.array([]),
    ...
  });
}

然后,我使用以下内容添加“联系人”组。

initContact() {
  return this._fb.group({
    ...
    email: this._fb.array([]),
    ...
  });
}

然后我以同样的方式设置了 initContactEmail。

4

1 回答 1

2

您已指定 的索引contact

<FormArray>this.newTrustForm.controls['contact'][INDEX]['controls']['email']

或者(更具可读性):

this.newTrustForm.get(`contact.${INDEX}.email`) as FormArray;

另外,作为建议,因为contactand emailare arrays,您可以将它们命名为复数:contactsand emails

于 2017-03-02T15:51:15.133 回答