web-dev-qa-db-fra.com

RxSwift Comment utiliser combineLatest?

J'ai défini:

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

et je voudrais faire un observable avec combineLatest pour additionner ces deux valeurs:

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

et j'essaye aussi:

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

J'obtiens toujours une erreur de compilation. Merci

19
chiarotto.alessandro

Essaye ça:

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
}

Comme vous pouvez le voir, la clé consiste à transmettre currentHours et currentRate comme observables dans les paramètres de la fonction.

50
Audioy