Angular使用可观察对象的数据架构
在Angular中,可以使用可观察对象作为数据架构的骨架来构建应用
使用可观察对象构造数据被称为响应式编程(reactive programming)。
流:
- 承诺(promise)发出单个值,而流发出多个值。
- 在响应式编程中,代码订阅了数据变化时接收通知,流会把数据”推送“给这些订阅者。
- RxJS是函数式的,数据集合和强大的函数操作符同样适用于流。
- 流是可组合的。可以把流想象成一个贯穿数据的操作管道。你可以订阅流中的任何部分,甚至可以组合它们来创建新的流。
服务:每个数据模型都有其对应的服务。服务都是单例对象,有两个作用:
- 提供应用可以订阅的数据流;
- 提供操作符来添加或更改数据。
Subject
BehaviorSubject
操作流模式
共享流
Rx 热的可观察对象和冷的可观察对象