比较Rxjs事件处理和Promise的具体示例

比较Rxjs事件处理和Promise的具体示例,rxjs,Rxjs,全部: 我对Rx.js很陌生(我在一次技术会议上听到这个名字),我想知道的是如何在实际项目中使用它(或者说它的用例是什么),有谁能给我举个例子,在什么情况下Rx.js可以做但承诺做不到(或者在Rx.js中更容易做) 谢谢你的问题太含糊了,没有限制。我建议你读一些书,但如果你想要简短的版本: 可观测的 当“无限序列”结束时,返回逻辑“无限”数量的值和“完成”,或抛出错误 具有创建/订阅/处置生命周期 实际上可以对一系列HTTP请求及其取消进行建模 基于函数式编程技术,是被动的 非常适合对异步数据

全部:

我对Rx.js很陌生(我在一次技术会议上听到这个名字),我想知道的是如何在实际项目中使用它(或者说它的用例是什么),有谁能给我举个例子,在什么情况下Rx.js可以做但承诺做不到(或者在Rx.js中更容易做)


谢谢

你的问题太含糊了,没有限制。我建议你读一些书,但如果你想要简短的版本:

可观测的

  • 当“无限序列”结束时,返回逻辑“无限”数量的值和“完成”,或抛出错误
  • 具有创建/订阅/处置生命周期
  • 实际上可以对一系列HTTP请求及其取消进行建模
  • 基于函数式编程技术,是被动的
  • 非常适合对异步数据流进行建模
  • 根据订阅者进行延迟评估
承诺

  • 异步返回单个值或拒绝/抛出错误
  • 创建,然后根据定义解决或拒绝
  • 可以为将要实现的单个HTTP请求建模
  • 不是真正基于FP的(关于这一点有很多GH问题,它们几乎都充满了戏剧性,不太值得一读)
  • 只能对单个任务建模
  • 他们急切地通过设计进行评估
有些人可能会误认为这是对承诺的攻击,但对于单值异步,承诺通常足够好。但是Rx用户可能不喜欢承诺,因为他们觉得他们只有一部分功能,与可观察的功能相比,功能更少