使用 Flow 进行实时数据转换

HDN*_*HDN 4 design-patterns kotlin android-livedata kotlin-flow

我是否阅读了有关 Flow 的更多信息,我开始认为您可以用与 Flow 类似的内容替换 MutableLiveData switchMap 模式。

您可以通过实现类似的方法来用流替换 LiveData 观察,但我无法想象如何替换 switchMap 部分。

我所说的 switchMap 模式是这样的:

val mutableLiveData: MutableLiveData<SomeClass> = MutableLiveData()
val liveData: LiveData<SomeOtherClass> = mutableLiveData
    .switchMap {
       //call to repo
    }
Run Code Online (Sandbox Code Playgroud)

有没有类似的东西或者我完全错过了一些东西?或者甚至以完全错误的方式思考流程。

Hen*_*ist 6

等价的是Flow.flatMapLatest((T) -> Flow<R>). 他们实际上删除了。Flow.switchMap功能有利于一些新mapLatest功能。

然而,这目前已被标记为实验性的,因此请谨慎使用。