Nam*_*mit 12 observable angular angular-observable
根据https://angular.io/tutorial/toh-pt6
通常,observable可以随时间返回多个值.来自HttpClient的observable总是发出一个值,然后完成,永远不会再次发出.
确实如此,一旦请求完成,Http请求/响应就不能再生成任何值.那么HTTPClient在发出请求时返回Observable的主要原因是什么?这只是因为我们可以在Observable上应用大量的运算符(重试,去抖等)吗?或者我有什么其他特殊原因吗?
max*_*992 11
你会发现最好的答案是Pascal Precth在2015年12月提出的专题问题上解释说:"Observables对于http有什么意义吗?" (但随意阅读,大量额外的答案也非常好!)
最重要的是:
- 重试
- 取消
- 享受所有Rxjs操作符
- 将它们组合成流的可能性
- 在整个应用程序中反应性思考
- 一致性
- Observables本质上是冷的,不需要像Promises一样将它们包装到工厂函数中如果你想稍后触发它
Observable 是 Angular 框架中的标准异步处理程序。
按照标准,我的意思是异步管道、路由守卫、路由解析器、组件事件发射器和许多其他地方都支持 observable。
Angular 团队付出了很多努力来支持承诺作为其中许多功能的后备,但在幕后,这些承诺无论如何都只是转换为可观察的。
通过使 Http 请求可观察,Angular 团队使核心中的异步操作与其他地方的所有内容保持一致。
observables 仍然比 promises 有一些优势,但这主要是自以为是(就像我自己的观点)。
| 归档时间: |
|
| 查看次数: |
1751 次 |
| 最近记录: |