gpt4 book ai didi

ios - RxSwift Observable.empty() 正在调用 onNext

转载 作者:行者123 更新时间:2023-11-28 05:44:13 27 4
gpt4 key购买 nike

检测何时到达表格 View 底部如果不是底部 返回 Observable.empty()如果 tableview 是底部 return Observable.just(())

据我所知,Observable.empty() 没有调用 onNext

但是 empty()just() 调用 onNext

tableView.rx.contentOffset
.map {
self.isNearTheBottomEdge(contentOffset: $0, self.tableView) && self.postModel.isLoadingComplete.value
? Observable.just(())
: Observable.empty()
}
.throttle(3, scheduler: MainScheduler.instance)

.subscribe(onNext: {
print("reached bottom")
self.postModel.nextPage.onNext(())
},onCompleted: {
print("complete")
}
)
.disposed(by: disposeBag)

在调试中返回 Observable.empty() 但总是 print("reached bottom")

最佳答案

如果您不想在 Observable.empty() 上调用 subscribe(onNext),只需将 .map{} 更改为 .flatMap{ }

tableView.rx.contentOffset
.flatMap {
self.isNearTheBottomEdge(contentOffset: $0, self.tableView) && self.postModel.isLoadingComplete.value
? Observable.just(())
: Observable.empty()
}

Here您可以阅读 mapflatMap

之间的区别

关于ios - RxSwift Observable.empty() 正在调用 onNext,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55506806/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com