上篇博客我們聊了observe()、map()、filter()延展函數(shù)的具體實現(xiàn)方式以及使用方式。我們在之前的博客中已經聊過,Signal的主要功能是位于SignalProtocol的協(xié)議延展中的,而且延展函數(shù)是非常的多的。今天博客中我們繼續(xù)來聊SignalProtocol中那些比較核心的延展實現(xiàn)。本篇博客我們就來聊一下take()函數(shù)的使用以及實現(xiàn)方式,并且再聊一下Signal中collect()的相關實現(xiàn)。

 

一、take(first)

本部分我們就來聊一下take(first)的使用方式以及具體的實現(xiàn)方式。與上篇博客的套路類似,我們聊完代碼后,依然會給出take(first)函數(shù)的運作方式。如果你看過上篇博客的內容的話,那么take(first)方法是比較好理解的。因為take(first)也是可以鏈式發(fā)展的,并且使用時的整體結構與map()filter()方法差不多,只不過后兩者接收的是一個閉包,而take(first)方法接收的是一個值罷了。

1、take(first)方法的使用

下方示例是ReactiveSwift官方給出的take(first)的使用示例,對其解釋如下:

  • 網(wǎng)友評論