ViewModel中的SignalProducer仅向ViewController

时间:2015-10-22 12:30:11

标签: ios swift mvvm reactive-cocoa

我的应用程序使用ReactiveCocoa 4.0,我使用MVVM模式。

我想从ViewController中观察ViewModel中的一些值。但是,我从ViewModel中的MutableProperty只获得了一个初始下一个事件,并在ViewController中进行了以下观察

// in the ViewController
self.viewModel.player.producer.startWithNext { player in
    // Gets called only once
}

ViewModel中的mutable属性定义如下

let player = MutableProperty<Player>(Player())

在更改时,我更改了播放器的value属性。

奇怪的是:在ViewModel中,如果我以完全相同的方式观察SignalProducer,我将获得所有更新。

// in the ViewModel
self.player.producer.startWithNext { player in
    // Gets called on every change to player.value
}

任何想法可能是什么原因?

修改

正如Cosyn建议的那样:我检查了其他事件,例如已完成或错误 - 没有发送任何可能阻止信号的事件。 此外,我稍后检查了MutableProperty的实例和viewModel实例本身 - 所有相同的内容都没有改变或取消。

0 个答案:

没有答案