Firebase 吸气剂';文件';在空颤振火基上调用
当我按下聊天选项卡时。在检索数据之前,它会显示错误数秒 对null调用了getter“documents” 收件人:空 尝试呼叫:文档Firebase 吸气剂';文件';在空颤振火基上调用,firebase,flutter,Firebase,Flutter,当我按下聊天选项卡时。在检索数据之前,它会显示错误数秒 对null调用了getter“documents” 收件人:空 尝试呼叫:文档 Widget chatRoomsList() { return StreamBuilder( stream: chatRooms, builder: (context, snapshot) { print(snapshot.data.documents.length); return
Widget chatRoomsList() {
return StreamBuilder(
stream: chatRooms,
builder: (context, snapshot) {
print(snapshot.data.documents.length);
return snapshot.hasData ? ListView.builder(
itemCount: snapshot.data.documents.length,
shrinkWrap: true,
itemBuilder: (context, index) {
return ChatRoomsTile(
userName:snapshot.data.documents[index].data['chatRoomId'].toString().replaceAll("_", "").replaceAll(Constants.myName, ""),
chatRoomId: snapshot.data.documents[index].data["chatRoomId"].toString(),
);
})
: Container();
},
);
}
我试过这个。还是一样的错误
Widget chatRoomsList() {
return StreamBuilder(
stream: chatRooms,
builder: (context, snapshot) {
print(snapshot.data.documents.length);
if(snapshot.hasData){
return ListView.builder(
itemCount: snapshot.data.documents.length,
shrinkWrap: true,
itemBuilder: (context, index) {
return ChatRoomsTile(
userName:snapshot.data.documents[index].data['chatRoomId'].toString().replaceAll("_", "").replaceAll(Constants.myName, ""),
chatRoomId: snapshot.data.documents[index].data["chatRoomId"].toString(),
);
});
}
else
{
return Container();
}
},
当snapshot.data为空时,您正在尝试打印它的文档。如果快照有数据,则可以打印它。如下更改代码:
if(snapshot.hasData){
print(snapshot.data.documents.length);
谢谢你。它成功了。好了,现在你可以接受并投票决定答案:)我希望我能。购买我的声誉低于15:(现在您可以这样做:)要将答案标记为已接受,请单击答案旁边的复选标记,将其从灰色切换为已填写:)