我有一个具有几个不同功能的视图模型,如下所示:
func somethingSignal() -> SignalProducer<Void, NSError>
{
return SignalProducer {
sink, disposable in
sink.sendNext(blabla)
sink.sendCompleted()
}
}
现在,这些信号需要按顺序运行——在前一个信号完成之前无法启动。因此,我有另一个函数,称为:
func setup() -> SignalProducer<Void, NSError>
{
return somethingSignal()
.then(somethingSignal2())
.then(somethingSignal3())
}
我的印象then
是用于这种行为的功能。Signal3 不应该在 Signal2 完成之前开始,它不应该在 Signal1 完成之前开始。
调用的函数setup
有start()
调用。
我哪里错了?