0%

rxjs

什么是 rxjs

一组可以用来处理非同步或事件的 js 函数库

非同步

  • ajax/XHR/fetch
  • Service Worker/ Node Stream
  • setTimeout /setInterval
  • Promise

事件

  • DOM 事件 click dbclick keyup
  • CSS 动画事件
  • HTML5 Geolocation /websockets/server send event

Observable 可观察的物件

代表一组未来即将产生的事件资料

Observer 观察者物件

代表一个用来接收观察结果的物件
观察者物件包含 3 个含有回调函数的属性 next error complete

Subscription 订阅物件

代表正在执行 Observable/Observer 的执行个体 可用来取消订阅

Operators 运算子

必须拥有函数编程所定义的纯函数特性
主要用来处理一系列的事件资料合集
常见的运算子包含 map,filter,concat,flatMap,switchMap

Subject 主题物件

如同 EventEmitter 一样,主要用来广播收到的事件资料给多为 Observer (观察者)

schedulers 排程调度器

用来集中管理与调度多重事件之间的资料,一控制事件并发情况