我有一个可观察的物体,发出的数据看起来像这样:
$element
因此,当我从可观察的对象接收AlertData时,我将其直接绑定到另一个观察者,效果很好。但是在将它绑定到另一个观察者之前,我想获取' actionStream '并从中获取事件。
所以,这就是我发出AlertData的方式:
$attrs
这是接收部分:
struct AlertData {
let name: String
let actionStream: PublishSubject<Void>
}
但是在将alertStream绑定到anotherObserver之前,我想要位于AlertData内部的actionStream并接收从其发出的任何事件。正确的做法是什么?
答案 0 :(得分:1)
let actionStream = alertStream
.flatMap { $0.actionStream.asObservable() }
您可能实际上并不想专门使用flatMap
(用作平面地图合并)。查看flatMap的变体,看看哪种最适合您的特定情况:RxSwift’s Many Faces of FlatMap