繁体   English   中英

如何处理打字稿中共享可观察对象中的错误?

[英]How do I handle errors in a shared observable in typescript?

我偶然发现了一个问题,并且很难找到有类似问题的人,这可能表明我正在做一些我不应该做的事情。

我正在做一个看起来像这样的 http 请求

return this.httpClient.post(`${this.route}/typegroups`, JSON.stringify(typeGroup)).pipe(share());

我订阅了返回的 observable 两次,并希望在发生错误时通知两个订阅者(当然,如果一切顺利的话)。 现在只有第一个订阅者收到错误通知

第一个订阅者:

obs.subscribe((next:any) => {
  //Success Code
},
error => {
  this.notificationService.showError(error.message)
})

第二个订阅者

obs.subscribe(next => {
    console.log("EVERYTHING WENT WELL")
  },
  error => {
    console.log("ERROR")
  },
  () => console.log("COMPLETED"));

第一个订阅者收到错误通知并执行错误方法,但另一个订阅者正在执行下一个方法。 这让它认为一切顺利。 知道为什么会这样吗? 也许甚至有更好的方法来做到这一点?

非常感谢,我目前正在绞尽脑汁寻找解决方案。

这实际上在一夜之间以某种方式解决了......我不知道为什么或如何,但现在它起作用了......

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM