如何在 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 类型为 NoErrorSignalProducer。为了解决这个问题,我在 SignalProducer 上添加了一个效用函数,其行为方式与 startWithValues 相同,但适用于任何 Error 类型(忽略任何错误。)