Created
May 13, 2017 17:16
-
-
Save TheCodedSelf/b1ad83927b470f32aad8d4fde415327e to your computer and use it in GitHub Desktop.
RxSwift: Bind to button taps
Simple and cool. But I think the disposed-by is missing:
button.rx.tap
.bind {
print("button tapped")
}
.disposed(by: someDisposeBag)
Dont know the difference but Im used to do this way:
btnSend.rx.tap.subscribe(onNext: { [ weak self ] in
self?.showLoader()
self?.viewModel.updatePassword(success: {
self?.hideLoader()
self?.navigationController?.popToRootViewController(animated: true)
}) { (message, highlight) in
self?.hideLoader()
self?.showErrorAlert(message: message)
}
}).disposed(by: viewModel.bag)
Which is the better way?
Using bind
is better way because tap
is a ControlEvent<()>
, so it never emits an error. In case of using subscribe
, it's not obvious anymore.
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
cool!