微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

在Flutter中将流转换为未来

如何解决在Flutter中将流转换为未来

这里是Flutter的初学者,所以如果我的问题很愚蠢,请不要介意...

如何将流转换为未来?

我有一个Stream,它只是多次调用请求的URL,因为它是Stream。我希望能够获取数据而不是加载状态...因为我总是永远都只能加载

某处是否有类似Future.fromStream()功能,我想念它吗?

我能做到吗?

我没有提供任何代码,因为如果您需要代码,我认为不需要,我可以编辑问题

解决方法

Stream具有firstWhere方法,该方法将返回Future

_profileService.profileStream.firstWhere((element) => false);
,

Stream和Future是两个不同的概念。

在使用时,流保持数据更新,而Future仅一次。 使用流的示例:购物车,商品清单 使用future的示例:登录后获取getUserDetails。

如果您正在使用流,则可以使用streambuilder来构建UI

StreamBuilder<User>(
  stream: userBloc.author,// your stream here
  builder:
      (BuildContext context,AsyncSnapshot<User> snapshot) {
    if (snapshot.connectionState == ConnectionState.active && snapshot.hasData) {
      // do your work here
    } else {
      return CircularprogressIndicator();
    }
  },)

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。