Angular RxJS和Async/Await:如何比较两者?

Angular RxJS和Async/Await:如何比较两者?,angular,asynchronous,ionic-framework,rxjs,Angular,Asynchronous,Ionic Framework,Rxjs,我是一名Angular/Ionic开发人员,最近我在Async/Await模式方面遇到了一些问题,这导致我对自己的工作方式进行了重新评估。我的一个朋友说RxJS库是处理异步调用的一个很好的工具,所以我研究了RxJS提供的所有功能 问题是,我想以一种平等的方式对两者进行比较,让我的其他一些开发人员朋友能够了解为什么RxJS方式更好或者为什么不更好 为了展示这一点,我制作了一个github repo() 我对异步等待部分有一些疑问。我需要执行一些并发调用,当这两个调用都完成时,需要取消加载,但不使用

我是一名Angular/Ionic开发人员,最近我在Async/Await模式方面遇到了一些问题,这导致我对自己的工作方式进行了重新评估。我的一个朋友说RxJS库是处理异步调用的一个很好的工具,所以我研究了RxJS提供的所有功能

问题是,我想以一种平等的方式对两者进行比较,让我的其他一些开发人员朋友能够了解为什么RxJS方式更好或者为什么不更好

为了展示这一点,我制作了一个github repo()

我对异步等待部分有一些疑问。我需要执行一些并发调用,当这两个调用都完成时,需要取消加载,但不使用逻辑来保持流量

包含这两种实现的文件是:


请随意发布我的回购协议或/并在此处回答。两者都受欢迎。谢谢

RXJs提供了一些不错的功能,例如可重放/可共享调用,管道机制,例如映射数据或合并异步数据,因为JavaScript在检索数据方面存在一些问题,特别是日期格式和持续时间,这通常需要某种转换

async await样式非常简单,但是缺少一点“自由”来截获/转换从服务器(例如Spring)异步检索的数据,这导致需要维护大量额外的代码

大矛盾:RxJs的学习曲线有点烦人,因为当你使用过多的管道时,你会产生一点垃圾代码。但迟早,复杂的管道系统会更有意义,看起来也不像是意大利面条

另外,异步等待模式仍然以某种方式存在,它只是“调用并订阅”,但除此之外,您可以更好地控制值的到达方式、处理方式、进行相关异步调用的方式(aync值A取决于异步值B中的数据)以及处理错误的方式,而样板代码更少