【发布时间】:2020-11-08 00:03:18
【问题描述】:
我正在学习 RxSwift 并试图了解 Observable 和 PublishSubject aka Sequence 之间的主要区别。
据我了解,Sequences / PublishesSubject 充当 Observable 和 Observer。您可以订阅这些,如果值发生变化,它们会发出通知。 PublishesSubject 可以更改。
我的问题是,那么 Observables 的目的是什么?我只能使用just() 或from() 创建具有固定值的 Observable。但是我不能更改这些值或附加一个项目,对吧?所以我的 Observable 只会发出我在 init 中分配给它的值。当实际值是不可变的时,为什么我需要 Observable 呢?
让我们考虑一个返回Observable<UIImage> 的函数。我可以只返回一个 UIImage,而不是返回那个 Observable 然后订阅下一个。为什么需要 Observable?
如果我创建以下 Observable:
let observable = Observable.of(1,2,3)
我会有一个静态大理石图.. 我的 Observable 将发出 1,2 和 3。然后..?结束了吗?
我只是不明白为什么我应该使用 Observable。任何帮助表示赞赏。
【问题讨论】:
-
注意
PublishSubject是Observable的一种(还有很多其他的),所以如果你明白PublishSubject的目的,那就是你应该使用@987654328的一个原因@!我想你只是不确定为什么of和just存在。对吗?