美文网首页
Combine - Operator(操作符)(一)

Combine - Operator(操作符)(一)

作者: 盟主直播Libx | 来源:发表于2021-11-23 16:14 被阅读0次

    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(操作符)(二)

    相关文章

      网友评论

          本文标题:Combine - Operator(操作符)(一)

          本文链接:https://www.haomeiwen.com/subject/caiwzltx.html