我正在尝试从服务函数获取数据,该服务函数从同一服务中的另一个函数获取一些数据。
我在组件中调用服务功能,如下所示: -
export class AppComponent implements OnInit {
ngOnInit() {
this.dataService.getDDs().subscribe(
data => {console.log(JSON.stringify(data))},
error => console.log(error)
);
}
}
服务中的第一个功能
getDefaults(){
return this._http.get('url')
.map((result: Response) => {
const res = result.json();
return res;
}, err => {
console.log(err);
});
}
服务中的第二个功能
getDDs(){
return this._http.get('url')
.map((result: Response) => {
const data = result.json();
return this.getDefaults().subscribe(
datab => {
if (data.length !== 0) {
//some operation on datab
return datab; //this should return in component
}else{
return datab; //this should return in component
}
},
error => console.log(error)
);
}, err => {
console.log(err);
});
}
在运行时,它会抛出错误 TypeError:循环对象值
有更好的方法吗?第二个功能取决于第一个功能。