What is the RxSwift 3.0 equivalent to AnonymousDisposable from RxSwift 2.x?
To create Observable
's in Swift 3,4,5 you have to substitute the old AnonymousDisposable
instance with Disposables.create()
, like in this way:
let source = Observable.create { observer in
observer.on(.next(1))
observer.on(.completed)
return Disposables.create()
}
If you wanna take some action when the Observable is disposed you can use the one you mention before instead:
return Disposables.create {
print("Disposed")
}
I hope this help you.
Note that this syntax from Swift 2:
NopDisposable.instance
has also been replaced with
Disposables.create()
Beyond that, it's interesting to note that, under the hood, NopDisposable
still exists but is exposed via this create
method. Here's the source.