RXJS操作符(三)

RXJS操作符(三)_第1张图片
image.png

RXJS操作符(三)_第2张图片
image.png

RXJS操作符(三)_第3张图片
image.png

RXJS操作符(三)_第4张图片
image.png

debounceTime()的使用方式如下:


RXJS操作符(三)_第5张图片
image.png

当我们做网络搜索的时候不能使用上面的方式进行网络请求 这样消耗网络,性能也不会好 这时候需要我们使用debounce()


RXJS操作符(三)_第6张图片
image.png

当停止输入之后,在300毫秒之内没有事件触发,就会打印输出。
使用debounce()也可以完成上面的效果,代码如下:
RXJS操作符(三)_第7张图片
image.png

debounce()的使用方法比debounceTime()的使用方法更为灵活,可以设计更为灵活的过滤条件。


distinct() 让整个流序列中没有重复序列,当使用distinct要切记无尽序列,因为控件会一直在监听输入事件


RXJS操作符(三)_第8张图片
image.png

distinctUntilChanged() 让流序列前后没有重复序列


RXJS操作符(三)_第9张图片
image.png

merge()方法: 把两个按照各自的顺序叠加成一个流


RXJS操作符(三)_第10张图片
image.png

concat()方法 : 先合并第一个流之后将第二个流加到第一个流之后 如果第一个流是五险


RXJS操作符(三)_第11张图片
image.png

RXJS操作符(三)_第12张图片
image.png

startWith()方法 : 在流的最前面加入一个值:


RXJS操作符(三)_第13张图片
image.png

combineLatest()方法 : 将两个流的最新的值进行合并
RXJS操作符(三)_第14张图片
image.png

zip()方法: 当两个流都是新的值的时候(两个流必须都是更新的最新值) 才会合并 。 存在对齐的方式。
RXJS操作符(三)_第15张图片
image.png

withLatestFrom() :和zip的区别在于,withLatestFrom不要求成对出现,和combineLatest的区别 ,withLatestFrom以第一个流为主,第一个流改变的时候有输出,第二个流改变的时候没有输出。而combineLatest无论如何都会有输出。


RXJS操作符(三)_第16张图片
image.png

你可能感兴趣的:(RXJS操作符(三))