这是我的密码
@override
Widget build(BuildContext context) {
return Scaffold(
body:StreamBuilder(
stream:FirebaseFirestore.instance
.collection('chats/r7T0B5xmCSgKQFLl2uNj/messages')
.snapshots(),
builder:(context,streamSnapshot) {
return ListView.builder(
itemCount: streamSnapshot.data!.docs.length,
itemBuilder:(ctx, index) =>
Container(
padding: const EdgeInsets.all(8),
child: const Text("This Work!"),
),);
} ,),
floatingActionButton: FloatingActionButton(
onPressed: (){},
),
);
}
}
在itemCount: streamSnapshot.data!.docs.length
上使用空检查运算符时,此行出现异常,未进行空检查时出现错误
2条答案
按热度按时间mklgxw1f1#
获取数据需要一些时间,因此最初它将为null。此问题是由于使用bang
!
强制not null引起的。您可以执行
itemCount: streamSnapshot.data?.docs.length,
但更好的情况是,
查找有关使用StreamBuilder的详细信息
lyr7nygr2#
检查空值以获取数据长度使用空值安全: