为什么来自 MutableStateFlow 的 update() 方法似乎不起作用?



我实际上是以这种方式从数据类创建MutableStateFlow

private val _uiState = MutableStateFlow(DataUiState())
val uiState: StateFlow<DataUiState> = _uiState.asStateFlow()

当调用from:

val newsItems = repository.dataItems(item)
_uiState.update {
it.copy(dataItems = dataItems)
}

方法update {}显示了编译器中不存在的方法错误,为什么会发生这种情况?

需要导入update函数才能使用:

import kotlinx.coroutines.flow.update
...
val newsItems = repository.dataItems(item)
_uiState.update {
it.copy(dataItems = newsItems)
}

还要确保导入kotlinx-coroutines-core库:

implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-core:1.6.0'

相关内容

  • 没有找到相关文章

最新更新