Angular2 形式的嵌套组?

Nested groups in Angular2 forms?

我正在使用 Angular 2 中的反应式表单模块来创建具有多个嵌套组的表单。

我的 'trust' 表格有一组联系人位于

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

'contact' 组中的一个字段是 'email' 组的数组,我试图在这里找到它,但是,唉,没有。那我去哪里找呢?

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

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

constructor(private _fb: FormBuilder) { }

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

然后我添加 'contact' 个组,内容如下。

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

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

您指定了 contact 的索引:

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

或者(更具可读性):

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

此外,作为建议,由于 contactemailarrays,您可以将它们命名为复数形式:contactsemails