🔥码云GVP开源项目 12k star Uniapp+ElementUI 功能强大 支持多语言、二开方便! 广告
常用的有 * map 转换事件,返回普通事件 * flatMap 转换事件,返回` Observable * conactMap concatMap 与 FlatMap 的唯一区别就是 concatMap 保证了顺序 * subscribeOn 规定被观察者所在的线程 * observeOn 规定下面要执行的消费者所在的线程 * take 接受一个 long 型参数 count ,代表至多接收 count 个数据 * debounce 去除发送频率过快的项,常用在重复点击解决上,配合 `RxBinging` 使用效果很好 * timer 定时任务,多少时间以后发送事件 * interval 每隔一定时间执行一些任务 * skip 跳过前多少个事件 * distinct 去重 * takeUntil 直到到一定条件的是停下,也可以接受另外一个被观察者,当这个被观察者结束之后则停止第一个被观察者 * Zip 专用于合并事件,该合并不是连接(连接操作符后面会说),而是两两配对,也就意味着,最终配对出的 Observable 发射事件数目只和少的那个相同。不影响Observable的发射,Observable 被观察者会一直发射,不会停,只是Observer 接收不到 * merge 多个 Observable 发射的数据随机发射,不保证先后顺序 * Concat 多个 Observable 组合以后按照顺序发射,保证了先后顺序,不过最多能组合4个 Observable ,多的可以使用 contactArray * onErrorReturn 遇到错误是发射指定的数据到 onNext,并正常终止 * onErrorResumeReturn 遇到错误时,发射设置好的一个 Observable ,用来发送数据到 onNext,并正常终止 * onExceptionResumeReturn 和onErrorResumeReturn 类似,不同之处在于会判断是否是 Exception。如果是和 onErrorResumeReturn 一样,不是则会调用 onError。不会调用onNext