Двухстороннее связывание в RxSwift
Я прочитал двухсторонний оператор связывания в примере кода RxSwift.
func <-> <T>(property: ControlProperty<T>, variable: Variable<T>) -> Disposable {
let bindToUIDisposable = variable.asObservable()
.bindTo(property)
let bindToVariable = property
.subscribe(onNext: { n in
variable.value = n
}, onCompleted: {
bindToUIDisposable.dispose()
})
return StableCompositeDisposable.create(bindToUIDisposable, bindToVariable)
}
когдаproperty
измененный, он уведомит переменную и установит значение переменной, в то время как значение переменной установлено, он уведомит свойство. Я думаю, что это приведет к бесконечной петле ...