RxJava 的 RxSwift 变量或 BehaviorRelay 的内置等效项
Posted
技术标签:
【中文标题】RxJava 的 RxSwift 变量或 BehaviorRelay 的内置等效项【英文标题】:Built-in equivalent of RxSwift Variable or BehaviorRelay for RxJava 【发布时间】:2018-05-14 17:42:34 【问题描述】:问题
RxSwift for RxJava 中的Variable
(已弃用)或BehaviorRelay
的最佳等效项是什么?
加法
在这种情况下,我假设我可以使用 RxJava 中的内置对象BehaviorSubject
,但它的行为是否与上述对象相同?
我也知道有外部库RxRelay,但这是唯一的选择吗?
【问题讨论】:
【参考方案1】:subject 和relay 的区别在于subject 会记录错误或完成,将其传递到下游,而relay 只传递排放。
来自 Jake Wharton 的扩展库实现了 BehaviorRelay
行为,它等效于 RxSwift BehaviorRelay
。使用该扩展库应该没有问题。
我不确定您对非内置功能的担忧是什么。扩展库的源代码很容易获得,并允许您在部署之前查看代码。
【讨论】:
以上是关于RxJava 的 RxSwift 变量或 BehaviorRelay 的内置等效项的主要内容,如果未能解决你的问题,请参考以下文章
使用 Observable 绑定 BehaviorRelay - RxSwift
RxSwift 与 BehaviorRelay<Any?> 的双向绑定