2

我很困惑,有人可以向我解释一下,这两者之间的主要区别是什么?我很难理解。mutableState 是在 Jetpack Compose 中引入的,现在我的问题是,我们是否应该在 View Model 中使用它来替代 Mutabel State Flow?它们的目的和主要区别是什么?

4

2 回答 2

1

mutableState 正如您所提到的,它是 Jetpack Compose 的一部分,它充当触发器和可观察数据以触发重新组合或更新您的 ui 状态。组成取决于读取值的组件级别mutableState

在可组合中使用 mutableStateOf 取决于您的逻辑。这是 Jetpack Compose 的简单更新标志。

另一方面,mutableStateFlow 类似于 RxJava 的主题,您可以在其中设置和观察值并以反应方式对其进行多项操作,例如映射、过滤、设置线程或使用它处理错误。

myStateFlow.debounce(1000)
            .onStart {  }
            .catch { 
                
            }
            .distinctUntilChanged()
            .launchIn(viewModelScope)
于 2021-12-03T16:47:10.193 回答
0

MutableState用于 Jetpack Compose,用于MutableStateFlow替代MutableLiveData,用于内部ViewModel

于 2021-12-03T20:00:30.347 回答