如何在 ReactiveCocoa 5 中将 RACSignal 转换为 SignalProducer?
How do I convert a RACSignal to a SignalProducer in ReactiveCocoa 5?
在 ReactiveCocoa 4 中,我们可以使用 toSignalProducer()
将 RACSignal
转换为 SignalProducer
。 ReactiveCocoa 5中没有这个方法,那么我们如何做同样的事情呢?
在ReactiveObjCBridge中使用bridgedSignalProducer()
:
someSignal.toSignalProducer()
变成
bridgedSignalProducer(from: someSignal)
这会产生一个 SignalProducer<Value?, AnyError>
。与 RAC 4 的 startWithNext()
不同,RAC 5 的 startWithValues()
仅适用于 Error
类型为 NoError
的 SignalProducer
。为了解决这个问题,我在 SignalProducer
上添加了一个效用函数,其行为方式与 startWithValues
相同,但适用于任何 Error
类型(忽略任何错误。)
在 ReactiveCocoa 4 中,我们可以使用 toSignalProducer()
将 RACSignal
转换为 SignalProducer
。 ReactiveCocoa 5中没有这个方法,那么我们如何做同样的事情呢?
在ReactiveObjCBridge中使用bridgedSignalProducer()
:
someSignal.toSignalProducer()
变成
bridgedSignalProducer(from: someSignal)
这会产生一个 SignalProducer<Value?, AnyError>
。与 RAC 4 的 startWithNext()
不同,RAC 5 的 startWithValues()
仅适用于 Error
类型为 NoError
的 SignalProducer
。为了解决这个问题,我在 SignalProducer
上添加了一个效用函数,其行为方式与 startWithValues
相同,但适用于任何 Error
类型(忽略任何错误。)