在 Flutter 中具有加载小部件的提供程序 [重复]

Posted

技术标签:

【中文标题】在 Flutter 中具有加载小部件的提供程序 [重复]【英文标题】:Provider with loading widget in Flutter [duplicate] 【发布时间】:2021-06-24 16:10:55 【问题描述】:

我的 Flutter 应用中有一个流提供程序,它从我的 Firestore 数据库中获取数据。

我想在加载数据时显示加载小部件,直到完成加载。例如,类似于具有 ConnectionState 功能的 Futurebuilder。

这可能吗?

感谢您的帮助!

【问题讨论】:

这能回答你的问题吗? How to create a StreamProvider and subscribe to it later, Flutter 【参考方案1】:

当您使用未来的构建器时,您可以检查您的 snapshot.data 是否为空。如果为 null,则显示微调器,否则显示内容:

StreamBuilder(
   stream: myStream, //YOUR STREAM
   builder: (BuildContext context, AsyncSnapshot snapshot) 
     return snapshot.data == null
       ? Spinner() //LOADING SPINNER
       : Container() //AFTER RETRIEVING CONTENT

   
)

更新

既然你提到了未来的建设者,我就被误导了。这是您正在寻找的答案:

How to create a StreamProvider and subscribe to it later, Flutter

【讨论】:

您为 StreamBuilder 编写了代码,但我的意思是 StreamProvider 答案已更新。

以上是关于在 Flutter 中具有加载小部件的提供程序 [重复]的主要内容,如果未能解决你的问题,请参考以下文章

Flutter:查找已停用小部件的祖先是不安全的

在小部件测试中处理提供程序

检查图像是不是已加载到 Flutter 中的 Image.network 小部件中

Flutter中具有最小高度的扩展小部件

Flutter iOS - 在加载 Google Maps 小部件之前无法获取 initialCameraPosition 的当前位置

在路由后,TextField单击重建/重新加载小部件