要填充嵌套的FormArray,您可以使用FormGroup和FormArray的组合。以下是一个示例代码,演示如何使用Angular 8填充嵌套的FormArray:
首先,创建一个FormBuilder实例:
import { Component, OnInit } from '@angular/core';
import { FormBuilder, FormGroup, FormArray } from '@angular/forms';
@Component({
selector: 'app-example',
templateUrl: './example.component.html',
styleUrls: ['./example.component.css']
})
export class ExampleComponent implements OnInit {
form: FormGroup;
constructor(private fb: FormBuilder) { }
ngOnInit() {
this.form = this.fb.group({
nestedArray: this.fb.array([])
});
}
}
然后,在模板中使用formArrayName指令来迭代嵌套的FormArray,并使用formGroupName指令来访问每个嵌套的FormGroup:
接下来,您可以在组件中添加一个方法来动态添加嵌套的FormGroup到FormArray:
addNestedGroup() {
const nestedArray = this.form.get('nestedArray') as FormArray;
nestedArray.push(this.createNestedGroup());
}
createNestedGroup() {
return this.fb.group({
name: [''],
age: ['']
});
}
最后,您可以在模板中添加一个按钮来调用addNestedGroup方法:
这样,每次点击按钮时,都会动态添加一个嵌套的FormGroup到FormArray。
希望这个示例能帮助到您!