【发布时间】:2019-07-27 02:08:11
【问题描述】:
向我的表单添加 FormGroups 数组后,我无法在 FormGroup 中调用 setValue
这是我尝试过的:
this.formGroup.controls.formArray.get('input').setValue('test');
和
this.formGroup.get('formArray').get('input').setValue('test');
哪个抛出:
Cannot read property 'setValue' of null
TS:
get formArray(): AbstractControl | null { return this.formGroup.get('formArray'); }
this.formGroup = this.fb.group({
formArray: this.fb.array([
this.fb.group({
input: [null, [Validators.required]]
}),
this.fb.group({
anotherInput: [null, [Validators.required]]
}),
])
});
我做错了什么?
【问题讨论】:
-
只是一个普通的旧 JavaScript 数组,FormArray 使用数字索引引用其元素。在您的代码中,您有一个大小为 1 的 FormArray,这意味着您需要获取 FormArray 的第 0 个元素,然后对其进行处理。您的代码缺少的是它跳过了取出 FormArray 的第 0 个元素。
标签: angular angular-reactive-forms formarray formgroups