Mam zmienną, która jest tablicą wartości wyliczeniowych. Te wartości zmieniają się z czasem.Observable Current and Previous Value
enum Option {
case One
case Two
case Three
}
let options = Variable<[Option]>([ .One, .Two, .Three ])
Obserwuję tę zmienną dla zmian. Problem polega na tym, że muszę znać różnicę między najnowszą wartością a poprzednią wartością. Obecnie robię to:
let previousOptions: [Option] = [ .One, .Two, .Three ]
...
options
.asObservable()
.subscribeNext { [unowned self] opts in
// Do some work diff'ing previousOptions and opt
// ....
self.previousOptions = opts
}
Czy jest coś wbudowanego w RxSwift, które poradziłoby sobie z tym lepiej? Czy istnieje sposób, aby zawsze uzyskać sygnał z poprzednich i bieżących wartości?