Angular 形成数组,第一个索引始终为空
Angular Form Array, first Index always null
请协助,我正在尝试使用 angular 表单数组查看从组件到视图的数据。以下解决方案: 。帮助了我,但现在我遇到了一个问题,即表单数组的第一个索引始终为空,并且我收到以下错误:
ERROR Error: Cannot find control with path: '[object Object] -> 0'
at _throwError (forms.js:2432)
at setUpFormContainer (forms.js:2405)
at FormGroupDirective.addFormGroup (forms.js:6691)
at FormGroupName.AbstractFormGroupDirective.ngOnInit (forms.js:2568)
...
Cannot read property 'controls' of undefined
at Object.eval [as updateDirectives]
...
在我的 ngOnInit 中我只有以下内容:
this.SectionForm= this.formBuilder.group({
sectionData: this.formBuilder.array([this.buildDevelopmentSector()])
});
this.activatedRoute.params.subscribe(res =>
// get data and push the data to a formArray called sectionDataArray
this.GetDataFromApi(res.requestId)
);
视图包含以下部分:
<div [formGroup] ="SectionForm">
<div [formArrayName]="sectionDataArray">
<div *ngFor="let section of sectionDataArray.controls ; let i = index" [formGroupName]="i">
...
...
...
</div>
查看日志,我看到以下内容:
0:
amount:""
percentage:""
name:""
quantity:""
__proto__:Object
1:
amount:1200000
percentage:23
name: "Repo"
quantity:20000
__proto__:Object
length:2
__proto__:Array(0)
您的支持对象有
sectionData: this.formBuilder.array([this.buildDevelopmentSector()])
所以它是 sectionData
但你在这里指的是 sectionDataArray
<div [formArrayName]="sectionDataArray">
改为sectionData
请协助,我正在尝试使用 angular 表单数组查看从组件到视图的数据。以下解决方案:
ERROR Error: Cannot find control with path: '[object Object] -> 0'
at _throwError (forms.js:2432)
at setUpFormContainer (forms.js:2405)
at FormGroupDirective.addFormGroup (forms.js:6691)
at FormGroupName.AbstractFormGroupDirective.ngOnInit (forms.js:2568)
...
Cannot read property 'controls' of undefined
at Object.eval [as updateDirectives]
...
在我的 ngOnInit 中我只有以下内容:
this.SectionForm= this.formBuilder.group({
sectionData: this.formBuilder.array([this.buildDevelopmentSector()])
});
this.activatedRoute.params.subscribe(res =>
// get data and push the data to a formArray called sectionDataArray
this.GetDataFromApi(res.requestId)
);
视图包含以下部分:
<div [formGroup] ="SectionForm">
<div [formArrayName]="sectionDataArray">
<div *ngFor="let section of sectionDataArray.controls ; let i = index" [formGroupName]="i">
...
...
...
</div>
查看日志,我看到以下内容:
0:
amount:""
percentage:""
name:""
quantity:""
__proto__:Object
1:
amount:1200000
percentage:23
name: "Repo"
quantity:20000
__proto__:Object
length:2
__proto__:Array(0)
您的支持对象有
sectionData: this.formBuilder.array([this.buildDevelopmentSector()])
所以它是 sectionData
但你在这里指的是 sectionDataArray
<div [formArrayName]="sectionDataArray">
改为sectionData