首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >不应在组合中调用StateFlow.value

不应在组合中调用StateFlow.value
EN

Stack Overflow用户
提问于 2021-10-19 16:56:00
回答 2查看 2.5K关注 0票数 8

今天我下载了Android大黄蜂测试版,并注意到一个新的警告:

"StateFlow.value不应在组合中调用“

为什么我们不应该在组合中调用StateFlow.value?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2021-10-19 20:37:08

因为在作文中,你应该倾听事件,而不仅仅是阅读当前的事件。如果您只读取当前的视图,那么在更改值之后,您的视图将不会被重新组合。

我的意思是-也许有一个有效的用例,但我从来没有遇到过。我想你看到的警告只是警告用户他们正在尝试做一些他们可能不想做的事情。

票数 10
EN

Stack Overflow用户

发布于 2022-01-18 16:58:13

在我的例子中,我添加了这样的.collectAsState()

代码语言:javascript
复制
@Composable
fun yourScreen() {
    val state = viewModel.viewState.collectAsState()
    when (state.value) {
        // your code
    } 
}
票数 8
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/69634920

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档