[英]Angular 8 return observable after chain of async calls
我有一个简单的函数,它一个接一个地调用 3 个异步函数,如下所示:
getData() {
this.getUsers('2')
.pipe(
flatMap((data: any) => {
return this.getPosts(data.id);
}),
flatMap((data: any) => {
return this.getPosts(data[0].userId);
})
).subscribe(results => {
return new Observable((observer) => {
observer.next(results);
observer.complete();
});
});
}
我希望能够以某种方式调用: this.getdata.subscribe()
并且在所有 3 个 flatMap 完成时调用它。 我假设我必须让 getData() 函数返回一个我试图在底部做的可观察对象,但它不起作用,我无法在 getData() 函数上调用 .subscribe 。
像这样尝试:
getData() {
return this.getUsers('2')
.pipe(
flatMap((data: any) => {
return this.getPosts(data.id);
}),
flatMap((data: any) => {
return this.getPosts(data[0].userId);
})
)
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.