Combine - Operator(操作符)(一)

Debugger操作符 | 类型管理操作符 | 转换操作符


Debugger操作符


print - 打印所有消息,并且给消息加上前缀

breakpoint - 发送调试信号,打断点,在想要调试的闭包中返回 true

handlerEvents - 在发生事件时调用对应的闭包,可以自定义处理一些逻辑

类型管理操作符


switchToLatest - 接受多个publisher,只保留最后一个publisher,之前的publisher执行取消方法,在实际开发中,特别适合用于搜索框的实时搜索功能,去掉多余的网络请求。

eraseToAnyPublisher - 类型擦除,将复杂的publisher类型进行擦除,变成类型简单易读(一眼看到output类型)的,也会擦除PassthroughSubject和CurrentValueSubject的手动发送send方法。

转换操作符


map - 接受一个闭包,数组里的每个元素自动执行这个闭包,然后发送给下游

flatMap -

接受一个闭包,所有数组拉直,也就是二维数组,变成一维数组,下面例子就是123456都执行该闭包

tryMap - 抛出错误,返回fail并且中止流程。

setFailureType - 指定当前publisher返回的错误,比如Just的失败类型为Never,通过sefFailureType可以指定当前Just的失败类型为LFError

merge - 可以合并2个publisher,但是要求output和error必须一致,如果error不一致,可以使用setFailureType指定一致

scan & tryScan - scan(第一次默认值,随后记录上次转换的结果),然后跟这次传递过来的值执行闭包



上一篇:Combine - Publisher & Subscriber(发布者 & 订阅者)完整

下一篇:Combine - Operator(操作符)(二)

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容