为了账号安全,请及时绑定邮箱和手机立即绑定

承诺和可观察性之间有什么区别?

承诺和可观察性之间有什么区别?

浮云间 2019-06-17 16:34:33
承诺和可观察性之间有什么区别?有谁能解释一下Promise和Observable有棱角?每一种情况下的一个例子都有助于理解这两种情况。在什么情况下我们可以使用每个案例?
查看完整描述

3 回答

?
白猪掌柜的

TA贡献1893条经验 获得超10个赞

承诺

Promise处理单事件当异步操作完成或失败时。

注:有Promise支持取消的库,但是ES6Promise到目前为止还没有。

可观察

Observable就像Stream(在许多语言中),并允许在每个事件调用回调的情况下传递零个或多个事件。

经常Observable优先于Promise因为它提供了Promise还有更多。带着Observable要处理0、1或多个事件并不重要。您可以在每种情况下使用相同的API。

Observable也比Promise成为可取消..如果不再需要对服务器的HTTP请求或其他昂贵的异步操作的结果,则Subscription一种Observable允许取消订阅,而Promise最终将调用成功或失败的回调,即使您不再需要通知或它提供的结果。

可观测性操作者喜欢mapforEachreduce.。类似于数组

还有一些强大的运算符,如retry(),或replay().。这通常很方便。


查看完整回答
反对 回复 2019-06-17
  • 3 回答
  • 0 关注
  • 487 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信