arrays - 如何获取 Firebase 快照长度?
问题描述
我用 Firebase 创建了一个应用程序,但我遇到了一个问题,那就是我
无法计算 listview.builder 中的快照长度。
StreamBuilder(
stream:
_firestore.collection('/posts/${widget.uid}/comments').snapshots(),
builder: (context, snapshot) {
final data = snapshot.data.documents;
if (!snapshot.hasData) {
return SpinKitChasingDots(
color: Colors.lightGreen,
);
}
return ListView.builder(
itemCount: snapshot.data.documents.length,//Here is the problem
itemBuilder: (context, index) {
return PostComment(
commentText: data[index]['commentText'],
userImage: data[index]['userImage'],
userName: data[index]['userName'],
);
},
);
},
),
当我运行它给我一个错误,它实际上没有一个叫做长度的吸气剂。
解决方案
尝试在你的显式声明类型StreamBuilder
StreamBuilder<QuerySnapshot>(
stream: _firestore.collection('...').snapshots(),
https://dart.dev/guides/language/sound-problems#runtime-errors
推荐阅读
- c# - Environment.GetFolderPath() 不支持哪些平台?
- macos - 在没有 Brew 的 Mac OS X Lion 上安装 OpenMP
- parsing - Ocaml 运行时解析器生成器
- angular - 输入上的 Angular Material 占位符不流动
- gcc - 使输出不连贯的错误消息
- python - 分组和聚合列,但如果值不匹配则创建 NaN
- qt - 当为常规样式图标定义 FontLoader 时,不要使用 Font Awesome 中的纯色样式图标
- sql - SSIS 包加载到 Excel 文件中
- laravel - Laravel 嵌套路由路径
- java - 如何将椭圆移动到 mouseClick 的坐标?