【发布时间】:2020-01-31 16:50:47
【问题描述】:
假设我有 2 个函数,每个函数返回一个 Observable
-
getUsersDataObs():返回的 Observable 调用一个 http 端点来获取一些与应用用户相关的数据,当接收到数据时这个 Observable 会发出 -
sendMailObs:返回的 Observable 调用邮件服务器发送电子邮件,当邮件服务器响应确认时,此 Observable 发出
我需要用户数据来创建邮件,所以我需要先调用getUsersDataObs,然后再调用sendMailObs。同时我不需要知道sendMailObs 是否完成。我只想用“即发即弃”的策略发送邮件。
到目前为止我制定的解决方案是这样的
getUsersDataObs().pipe(
tap(data => sendMailObs(data).subscribe())
)
.subscribe()
虽然这可行,但我们在订阅中有订阅,这通常看起来不太酷。同时,考虑到我想要的是“一劳永逸”,也许订阅中的订阅是合适的做法。
对此的任何评论将不胜感激
【问题讨论】:
-
您可以将
sendMailObs(data)合并到链中并忽略其所有排放。
标签: rxjs