RxSwift Как использовать combLatest?

Я определил:

let currentHours:Variable<Float> = Variable(0.0)
let currentRate:Variable<Float>  = Variable(0.0)

и я хотел бы сделать Observable с combLatest для суммирования этих двух значений:

Observable.combineLatest(currentHours, currentRate, { (h, r) -> Float in
    return Float(h+r)
})

и я также попробую:

let c =  Observable.combineLatest(currentHours, currentRate) { $0 + $1 }

Я всегда получаю ошибку компилятора. спасибо

Ответ 1

Попробуйте следующее:

let currentHours:Variable<Float> = Variable(0.0)
let currentRate:Variable<Float>  = Variable(0.0)

let hoursAndRate = Observable.combineLatest(currentHours.asObservable(), currentRate.asObservable()){
        return $0 + $1
}

Как вы видите, ключ находится в передаче currentHours и currentRate как Observables в параметрах функции.