[英]Binding BehaviorRelay with Observable - RxSwift
I have such code as below. 我有如下代码。 How can I achieve it in one chain, without using subscribe on timer?
如何在不使用计时器的情况下在一链中实现它? I would like to attach 'timerInterval' to 'timer' and then call subscribe.
我想将“ timerInterval”附加到“ timer”,然后调用subscribe。
var timerInterval: BehaviorRelay<String> = BehaviorRelay(value: "")
...
func doLogic() {
let timer = Observable<Int>.interval(0.05, scheduler: MainScheduler.instance)
timer.subscribe({ [weak self] value in
let doubleValue = Double(value.element ?? 0)
let dividedValue = doubleValue / 20.0
let text = String(format: "%.2f", dividedValue)
self?.timerInterval.accept(text)
}).disposed(by: disposeBag)
}
You'd go for map operator. 你会去找地图运营商。 I'm not sure why you need
BehaviourRelay
but I'd do something even more simpler: 我不确定为什么需要
BehaviourRelay
但我会做一些更简单的事情:
let timer = Observable<Int>.interval(0.05, scheduler: MainScheduler.instance)
var timerInterval: Observable<String> {
return timer.map { value -> String in
let doubleValue = Double(value.element ?? 0)
let dividedValue = doubleValue / 20.0
let text = String(format: "%.2f", dividedValue)
return text
}
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.