为了创建反应形式,FormGroup
必须有父母。这FormGroup
还可以含有formControls
,儿童formGroups
或formArray
FormArray
可以进一步包含formControls
或formGroup
本身的数组。
我们什么时候应该使用formArray?
请阅读这篇漂亮的文章,其中解释了formArray
该博客中有趣的例子是关于旅行的 formGroup
formGroup
使用formControl
和的旅行结构formArray
如下所示:
this.tripForm = this.fb.group({
name: [name, Validators.required],
cities: new FormArray(
[0] ---> new FormGroup({
name: new FormControl('', Validators.required),
places: new FormArray(
[0]--> new FormGroup({
name: new FormControl('', Validators.required),
}),
[1]--> new FormGroup({
name: new FormControl('', Validators.required),
})
)
}),
[1] ---> new FormGroup({
name: new FormControl('', Validators.required),
places: new FormArray(
[0]--> new FormGroup({
name: new FormControl('', Validators.required),
}),
[1]--> new FormGroup({
name: new FormControl('', Validators.required),
})
)
}))
})
不要忘了玩这个DEMO,并注意阵列的使用情况cities
和places
旅行的。