我有一个Observable,仅用于触发flatMap/map。因此,我只需要Next事件,就不需要值。我可以将自己的概念用于这样的垃圾值,但是我想知道是否有RxSwift约定。

这是我要处理的内容:

// I'd rather not have an Element type that someone might use
let triggeringObservable: Observable<SomeSessionClass>

// ...

triggeringObservable.map { _ -> String in // The actual value is ignored
    return SomeLibrary.username() // `username()` is only ready when `triggeringObservable` sends Next
}

在此示例中,triggeringObservable是库中某个属性上的rx_observer,这将使我们知道username()已准备好被调用。

最佳答案

您可以为此简单地使用Observable<Void>。像这样:

   let triggerObservable = Observable<Void>.just()

    triggerObservable.subscribeNext() {
        debugPrint("received notification!")
    }.addDisposableTo(disposeBag)

或在您的示例中:
let triggeringObservable: Observable<Void>

// ...

triggeringObservable.map { Void -> String in // The actual value is ignored
   return SomeLibrary.username()
}

07-27 13:41