Извините за плохой заголовок, я действительно не знал, как его сформулировать.
Предположим, у меня есть вызов службы где-то в компоненте 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)
})
}
Это, конечно, не работает, так как я не могу вернуть подписку, а затем снова подписаться на нее.
Но я думаю о ведении журнала, обмене сообщениями и других общих действиях, которые необходимо выполнить, когда пост был выполнен.
Есть ли способ достичь этого или я просто слеп, чтобы увидеть? : - (