【发布时间】:2015-11-19 13:04:44
【问题描述】:
我正在使用 ReactiveCocoa,并且我有几个 SignalProducers
let center = NSNotificationCenter.defaultCenter()
let signalProducer1 = center.rac_notification(name: notificationName1, object: nil)
let signalProducer2 = center.rac_notification(name: notificationName2, object: nil)
let signalProducer3 = center.rac_notification(name: notificationName3, object: nil)
我想将它们组合成一个信号生成器,只要其中一个生成信号,它就会生成一个信号。
起初combineLatest 函数看起来是个不错的解决方案
let combinedProducer = combineLatest(signalProducer1, signalProducer2, signalProducer3)
但是,根据this article 的说法,生成的生产者仅在三个都产生信号时才产生其第一个信号。
This interactive diagram 正是我想要的,所以我想将flatten 函数与.Merge FlatteningStrategy 一起使用。但是,我很难弄清楚实现这一点的语法。
【问题讨论】:
标签: ios swift reactive-cocoa reactive-cocoa-3