RxSwift中PublishSubject和PublishRelay有什么区别?

问题描述 投票:1回答:1

我是RxSwift编程的新手。编码时我对两者感到困惑。应该使用哪一个存储表的数据源以及如何确定该数据源?

reactive-programming rx-swift combine
1个回答
0
投票
  • PublishSubject可以发出错误或完成的事件,而PublishRelay不能。
  • 一个PublishSubject符合ObserverType协议,而PublishRelay不符合。

@ RobMayoff在他的评论中提到了另一个重要的观点。 PublishSubject和PublishRelay都不存储状态,因此它们都不是“存储表的数据源”的好主意。

幸运的是,您不需要自己存储状态,因为items运算符在内部创建了DataSource对象。

换句话说,您不需要使用Subject 中继(任何形式)来提供表格视图。只需使用一个Observable。

© www.soinside.com 2019 - 2024. All rights reserved.