RxJS速记笔记1-前言
閱讀時間:全文 399 字,預估用時 2 分鐘
創作日期:2020-04-16
下篇文章:Redex-Hooks
BEGIN
前言
RxJS是迭代器模式与观察者模式的具体实现, 之前看C++ STL有看到过有关迭代器的实现原理, 迭代器模式在RxJS里感觉应用的还是很彻底的..
RxJS对观察者模式的应用在现实前端开发中应用广泛, 可以节省很多的代码, 确实是个好东西.
现在RxJS已经是第6版了, 用途广泛, 在其它语言都有它对应的版本, 学一遍API就可以用在多个语言上和ORM这个宝贝一样, 让人期待!
LeetCode技术栈里包括RxJS, 有一道笔试题也是关于RxJS的, 学习了以后感受到了RxJS的精妙, 学习笔记记下来方便日后查阅.
学习难度
学习难度不大, 主要是概念上的理解, 然后刷遍API应该就没问题了, 概念其实就是对设计模式的理解, 能让RxJS如此实用优势的不过两点观察者模式和Operators里的函数库.
RxJS的学习入门可以分为如下几块知识点:
- Observable和Observer
- Operators
- Subject
- Scheduler
网上很多中文资源都是5版及以下的, 可以直接看官方文档, 地址: https://rxjs-dev.firebaseapp.com/ 🔗
一个示例
import { interval } from "rxjs";
import { take, debounceTime } from "rxjs/operators";
// 生成Observable, 其中pipe用于应用Operators, Operators按顺序执行
const observable = interval(300).pipe(
take(5),
debounceTime(1000),
);
// 生成Observer
const observer = {
next: (value) => { console.log(value); },
error: (err) => { console.log('Error: ' + err); },
complete: () => { console.log('complete'); }
}
// 订阅
const subscription = observable.subscribe(observer);
// 取消订阅
subscription.unsubscribe()
FINISH
下篇文章:Redex-Hooks