Reactivecocoa: 質問-SignalをSignalProducerに変換する方法は?

作成日 2015年11月05日  ·  4コメント  ·  ソース: ReactiveCocoa/ReactiveCocoa

私は最近、RAC 4にRAC 3から変換するために、開始していることを発見しましたtakeUntilSignalProducer今受け入れSignalProducerとは対照的に、 Signal RAC 3に。

これはextension SignalTypeでの私の現在の方法であり、かなりハックな感じがします。

func toSignalProducer() -> SignalProducer<T, E> {
  return SignalProducer { (sink, _) in
    self.observe(
      next: { t in sendNext(sink, t) },
      completed: { _ in sendCompleted(sink) }
    )
  }
}

これを改善できますか? ありがとう!

question

最も参考になるコメント

これはすでにフレームワークで利用可能です! :)

let producer = SignalProducer(signal: signal)

それは本質的に副作用のないプロデューサーを作成します(#2449を参照)

全てのコメント4件

更新の時間です! ありがとう:+1:

@ikesyo好奇心のために、 SignalSignalProducerに変換する私のアプローチは最適ではありませんか? これはもっとうまくできるでしょうか? SignalSignalProducer間の相互運用性のほとんどは、 lift Signalの演算子を受け入れてSignalProducerを受け入れることによってもたらされると思います(そして当然のことながら)。 SignalSignalProducer変換することは嫌われていますか?

これはすでにフレームワークで利用可能です! :)

let producer = SignalProducer(signal: signal)

それは本質的に副作用のないプロデューサーを作成します(#2449を参照)

このページは役に立ちましたか?
0 / 5 - 0 評価