我有一个必须能够定期重新绑定到新视图模型的视图:这意味着删除旧绑定以及连接新绑定。我有一个可行的解决方案,但它不是线程安全的,我想知道是否有更惯用的方法来做同样的事情:
var disposeBag = CompositeDisposable()
func bind(viewModel: TopicProgressViewModel) {
disposeBag.dispose()
disposeBag = CompositeDisposable()
disposeBag += self.reactive.isHidden <~ viewModel.isHidden
disposeBag += height <~ viewModel.height
disposeBag += label.reactive.text <~ viewModel.label
disposeBag += progress.reactive.progress <~ viewModel.progressFraction
}