我正在尝试向在数组上迭代值的端点发出多个API请求
所以我用rxjs forkJoin
实现了这一目标
//array to keep obeserbles
propOb: Observable<any>[];
input.property.forEach(property => {
console.log('prop', property);
const t = this.baseApiService.sendRequest(
'json',
{
method: 'post',
endPoint: 'v1/property/new',
data: {
property_id: uuid.v4(),
ics_ref_no: '122',
property_type: property.type,
property_role: property.role,
property_dec: property.description,
}
});
this.propOb.push(t);
});
forkJoin(this.propOb).subscribe((data) => {
console.log(data);
});
在运行时,我从此行cannot read property 'push' of undefined
中收到以下错误this.propOb.push(t);
此外,我不确定我的方法是否正确
答案 0 :(得分:3)
您需要初始化数组。除非您这样做,否则它一直是“未定义”类型。
更改
propOb: Observable<any>[];
到
propOb: Observable<any>[] = [];