如何将多个观察者绑定到一个ControlProperty

我需要将slider.rx.value绑定到2个具有不同映射的观察者。

 slider.rx.value.map { [unowned self] in self.formatter.string(from: NSNumber(value: $0)) ?? "" } .bindTo(textFieldAlpha.rx.text) .addDisposableTo(disposeBag) slider.rx.value.map { Enhance.Global(alpha: $0) } .bindTo(enhance) .addDisposableTo(disposeBag) 

但我似乎只有最后的约束力的作品。 如何做到这一点?

这是否完成你想要的?

 let observable = slider.rx.value.shareReplay(1) observable.map { [unowned self] in self.formatter.string(from: NSNumber(value: $0)) ?? "" } .bindTo(textFieldAlpha.rx.text) .addDisposableTo(disposeBag) observable.map { Enhance.Global(alpha: $0) } .bindTo(enhance) .addDisposableTo(disposeBag) 

如果你不需要缓冲区,可以select

 let observable = slider.rx.value.share() 

这里也是一个很好的RxSwift备忘单的链接https://www.cheatography.com/donghua-li/cheat-sheets/rxswift-operators/