【发布时间】:2019-04-04 22:45:18
【问题描述】:
抱歉标题不好,我真的不知道如何表达它。
假设我在 Angular 组件的某处有一个服务调用,例如:
this.myService.postObject(object).subscribe((serverData) => {
console.log('Server Name:' + serverData.name)
});
当 MyService 看起来像这样时,这当然可以完美运行:
postObject(dataObject: MyObject) {
return this.http.post(`http://server/object`, dataObject);
}
但是,当我想对异步结果做出反应时,不仅要单独在订阅中,而且还要对所有调用做出反应——理想情况下是这样的:
postObject(dataObject: MyObject) {
return this.http.post(`http://server/object`, dataObject)
.subscribe(
(serverData) => {
console.log('Server Name:' + serverData.name)
})
}
这当然行不通,因为我无法返回 .subscribe 然后再次 .subscribe 到它。
但我想到了在帖子执行时需要完成的日志记录、消息传递和其他一般活动。
有没有办法做到这一点,还是我只是瞎了眼? :-(
【问题讨论】:
标签: javascript angular angular-httpclient