android - streambuilder firebase上的错误如何解决
问题描述
我想获取他创建的所有用户帖子,并在 gridview 和 listview(列)上显示这些帖子,现在我已经有了我的查询。dart 分析器不显示错误,但是当我在调试中运行应用程序时,我会收到错误“列的子项不得包含任何空值,但在索引 0 处找到空值”
这是我的网格和列表视图小部件
Container buildUserPosts() {
return Container(
child: StreamBuilder <QuerySnapshot> (
stream: playlistsRef.where('authorId', isEqualTo: widget.userId).snapshots(),
builder: (context, snapshot){
if(!snapshot.hasData){
return Center(
child: new CircularProgressIndicator(
valueColor: new AlwaysStoppedAnimation<Color>(Colors.white
),
strokeWidth: 3.0,
),
);
}
else if (view == "grid") {
final List <_PlaylistLikeRecord> records = snapshot.data.documents
.map((snapshot) =>_PlaylistLikeRecord.fromSnapshot(snapshot))
.toList();if (records == null){
return Container();}else {
return GridView.count(
crossAxisCount: 3,
childAspectRatio: 1.0,
padding: const EdgeInsets.all(0.5),
mainAxisSpacing: 1.5,
crossAxisSpacing: 1.5,
shrinkWrap: true,
physics: const NeverScrollableScrollPhysics(),
children: <Widget>[
GridTile(
child: new Column(
children: records
.map((record) => _buildListItem(context, record))
.toList(),
)
),
]);}
} else if (view == "feed") {
final List <_PlaylistLikeRecord> records = snapshot.data.documents
.map((snapshot) =>_PlaylistLikeRecord.fromSnapshot(snapshot))
.toList();if(records == null){
return Container();}else{
return Column(
children: records
.map((record) => _buildListItem(context, record))
.toList(),
);}
}
},
));}
还有我在项目点击上的手势检测器
Widget _buildListItem(BuildContext context, _PlaylistLikeRecord record) {
GestureDetector(
onTap: () => Navigator.push(context,
MaterialPageRoute(builder: (context) => PlaylistsDetailsPage(
imageUrl: record.playlisturl, title: record.title
))),
child: Image.network(record.playlisturl, fit: BoxFit.cover));}
解决方案
推荐阅读
- python - 如何在python中绘制曲线和时间线条形图?
- list - 颤动中警报对话框上的下拉菜单
- visual-studio-code - 如何将 CLI args 与从源代码构建的 vscode 一起使用?
- angular - 使用 map 翻译 forEach 语句
- javascript - Vue.js“导入”在外部 js 文件中不起作用
- javascript - 事件是如何传递给这个函数的?
- c - 从 Go 传递 C-struct 时出现 _Ctype_struct_0 错误
- java - FCM 通知未发送声音
- spring - hibernate 是否有一些内部“提交 id”?
- python - Python Dash/Plotly 不能正确显示图表?