такой кейс, что когда пользователь вводит в серчбаре текст, идут запросы на сервак и может возникнуть такая ситуация, что на первый запрос ответ прийдет позже, чем на второй и на экране у юзера будут неактуальные данные. Кто-нибудь сталкивался с таким?
Создай DisposeBag и обнули при получении результата
RxMoya не использовал, но должно быть что-то типа: var disposeBag = DisposeBag() func getSomeData() { provider.rx.request(.zen).mapString().subscribe(onSuccess: { [unowned self] json in print(json) self.disposeBag = DisposeBag() }) { error in print(error) self. disposeBag = DisposeBag() // может и не надо на ошибке сбрасывать }.disposed(by: disposeBag) }
Посмотри оператор throttle.
Обсуждают сегодня