【问题标题】:is it ok to use value field in coroutines?在协程中使用 value 字段可以吗?
【发布时间】:2022-07-25 18:20:13
【问题描述】:

我有一个包含用户信息的流(作为单个对象)。有一些操作需要在单次操作中访问上述流程。无需观察,只需阅读所需信息一次。

我知道有 single() 和其他函数可以做这件事,但我的问题是,可以使用流的 value 属性而不是那些函数吗?

流程是StateFlow,所以value 是不可变的,我只想在视图模型中访问该字段,所以我没有违反封装。

【问题讨论】:

    标签: android kotlin kotlin-coroutines coroutine


    【解决方案1】:

    可以使用流的 value 属性代替那些函数吗?

    是的,这样做没关系。 StateFlow 的目的是始终公开“当前值”,因此希望直接访问 .value 是一个有效的用例,尤其是对于一次性只读操作。

    它甚至不违反封装。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-04-11
      • 2018-02-24
      相关资源
      最近更新 更多