如何将 RxSwift 的 Single 转换为 Observable 并忽略“完成”事件?
Posted
技术标签:
【中文标题】如何将 RxSwift 的 Single 转换为 Observable 并忽略“完成”事件?【英文标题】:How to convert RxSwift's Single to Observable and ignore `complete` event? 【发布时间】:2019-01-09 14:30:29 【问题描述】:案件如下。 我有一个从第三方 API 收到的 Single。 我想将此单转换为 Observable,但问题是 Single 转换为 Observable 在发出我不希望发生的值后仍然完成了我的可观察链。我希望我的 observable 永远不会完成。
问题是有什么方法比 'single.flatMap Observable.just($0)' 更容易做我想做的事吗?
【问题讨论】:
【参考方案1】:我希望看到更多代码,因为single.flatMap Observable.just($0)
将不会阻止完成事件的发生,所以如果您认为它确实发生了,那么就有问题了。
坦率地说,.flatMap Observable.just($0)
什么都不做,也就是说,您可以完全删除它,而根本不更改您的代码。
也就是说,停止已完成事件的最明显方法是single.concat(Observable.never())
。
【讨论】:
以上是关于如何将 RxSwift 的 Single 转换为 Observable 并忽略“完成”事件?的主要内容,如果未能解决你的问题,请参考以下文章
将 UIApplicationDelegate 方法转换为 RxSwift Observables