首页 > 解决方案 > 我如何将 FutureBuilder 更改为 streambuilder 我需要在这里做什么?

问题描述

使用编辑页面更新我的个人资料后,我必须刷新才能看到更改。请任何人都可以帮我将此代码更改为流构建器,或者至少告诉我该怎么做?

createProfileTopView() {
return FutureBuilder(
  future: usersReference.document(widget.userProfileId).get(),
  builder: (context, dataSnapshot) {
    if (!dataSnapshot.hasData) {
      return circularProgress();
    } else {
      User user = User.fromDocument(dataSnapshot.data);
      return Container(
        decoration: BoxDecoration(
          gradient: LinearGradient(

标签: android-studioflutterdart

解决方案


必须在服务上进行更改,它将不再返回 Future,而必须是 Stream。

至于你应该使用以下的小部件,它与 FutureBuilder 非常相似。

return StreamBuilder
(
  stream: stream ,
  initialData: initialData ,
  builder: (BuildContext context, AsyncSnapshot snapshot){
    return Container(
      child: child,
    );
  },
);

祝你好运!


推荐阅读