I'm trying to migrate my FRP understanding from ReactiveCocoa 2.5 to RxSwift and I have one misunderstanding. In ReactiveCocoa, I used rac_signalForSelector when I wanted to observe an invocation of a method. Is there any way to implement this logic using RxSwift?
I wrote a small example in which I want to dispose a subscription when the test method invokes. But in the subscribe block I can still see a next(6) event. What am I doing wrong?
let subject = PublishSubject<Int>()
subject.takeUntil(self.rx.sentMessage(#selector(test))).subscribe { event in
print(event)
}
subject.onNext(3)
test()
subject.onNext(6)
//////////////////
func test() {
}
selfis non-NSObject. I wouldn't recommend usingsentMessageif you can help it. Like you've seen, it can behave strangely and at best, it's a code smell. Use it only when necessary. - solidcell