RxSwift自学过程

简单参数总结


Observable(可观察量;感觉到的事物)

Observable<Element>是一个观察者模式中被观察的对象,相当于一个事件的序列,会向订阅者发送新产生的事件信息。

Sequence(序列;顺序;续发事件)

Sequence 把一系列元素转换为事件序列

AnonymousObservable(匿名的可观察)

AnonymousObservable继承自Producer,Producer实现了线程调度功能,可以安排线程来执行run方法,因此AnonymousObservable是可以运行在指定线程中的Observable

Error

Error,顾名思义,是做错误处理的,创建一个不发送任何item的Observable

Deferred(延期的)

deferred会等到有订阅者的时候在通过工厂方法创建Observable对象,每个订阅者订阅的对象都是内容相同而完全独立的序列。

Empty

empty 创建一个空的序列。它仅仅发送 .Completed 消息

Never

never 创建一个序列,该序列永远不会发送消息,.Complete消息不会发送

Just

Just 代表只包含一个元素的序列。它将向订阅者发送两个消息,第一个消息是其中元素的值,另一个是.Complete

PublishSubject

PublishSubject会发送订阅者从订阅之后的事件序列。

ReplaySubject

ReplaySubject在新的订阅对象订阅的时候会补发所有已经发送过的数据队列,bufferSize 是缓存区的大小,决定了补发队列的最大值。如果 bufferSize 是1,那么新的订阅者出现的时候就会补发上一个事件,如果是2,则补发两个,以此类推。

BehaviorSubject

BehaviorSubject 在新的订阅对象订阅的时候会发送最近发送的事件,如果没有则发送一个默认值。

Variable

variable是基于BehaviorSubject的一层封装,它的优势是:不会被显式的终结。即:不会收到 .Complete.Error 这类的终结事件,它会主动在析构的时候发送 .Complete

Transforming Observables


Transforming Observables 对序列做一些转换

Map

map 就是对每个元素都用函数做一次转换,挨个映射一遍。

FlatMap

flatMap 将每个 Observable 发射的数据变换为 Observable 的集合,然后将其降维排列成一个 Observable

Scan

scanObservable发射的每一项数据应用一个函数,然后按顺序依次发射一个值。

Filtering Observables (Filtering 过滤的)


Filtering Observables对序列进行过滤。

Filter

filter 只会让符合条件的元素通过

DistinctUntilChanged (distinct: 不同的; 明显的; 清楚的;)

distinctUntilChanged会废弃掉连续重复的事件

Take

take 只获取序列中的前n个事件,在满足数量之后会自动 .Completed

Combination operators (combination 结合,组合。operators 操作者,经营者)


Combination operators是关于序列的运算,可以将多个序列源进行组合,拼装成一个新的事件序列。

StartWith

startWith 会在队列开始之前插入一个事件元素

CombineLatest

CombineLatest 如果存在两个事件队列,需要同时监听,那么每当有新的事件发生的时候,combinlatest会将每个队列的最新一个元素进行结合。为了能够产生结果,两个序列中都必须保证至少有一个元素。

Zip

zip合并两条队列,不过它会等到两个队列的元素一一对应地凑齐之后再合并。

Merge

merge 合并多个 Observable 的组合成一个,假如只允许一个线程,则只会运行序列的第一个

SwitchLatest

switchLatest 将一个发射多个 ObservablesObservable 转换成另一个单独的 Observable, 后者发射那些 Observables 最近发射的数据项。

Error Handing Operators


Error Handing Operators 对从 Observable 发射的 error 通知做出响应或者从错误中恢复,简称错误处理。

CatchError

·catchError收到error` 通知之后,转而发送一个没有错误的序列

Retry

retry,如果原始的 observable 遇到错误,重新订阅。

Observable Utility Operators (Utility 效用 实用 实用的)


Observable Utility Operators 辅助工具

Subscribe (订阅 签署)

subscribe 有新的事件就会触发。

SubscribeNext SubscribeCompleted SubscribeError
DoOn

doOn 注册一个操作来监听事件的声明周期

Conditional and Boolean Operators


Conditional and Boolean Operators 条件与布尔操作,可用操作符根据条件发射或变换 Observables,或者对他们做布尔运算。

TakeUntil

猜你喜欢

转载自blog.csdn.net/github_33467146/article/details/81111141