当使用ViewModel,与UITableViewCell或者UICollectionViewCell数据进行绑定时,
var disposeBag: DisposeBag?
var viewModel: CartSubViewModel?{
didSet{
if let vm = viewModel{
let disposeBag = DisposeBag()
vm.numText.asObservable()
.bindTo(numField.rx.text)
.addDisposableTo(disposeBag)
self.disposeBag = disposeBag
}
}
}
override func prepareForReuse() {
super.prepareForReuse()
self.disposeBag = nil
}
需要用这种方法定义RxSwift的释放池 disposeBag,不然可能会造成Cell复用前无法解除ViewModel对其的绑定。