我正在尝试用云防火墙来实现流构建器来检索现场数据。以下是代码:
@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(
title: Text("test builder"),
),
body: StreamBuilder<QuerySnapshot>(
stream: FirebaseFirestore.instance.collection('joystick').snapshots(),
builder: (BuildContext context, AsyncSnapshot<QuerySnapshot> snapshot){
if(!snapshot.hasData){
return Center(
child: CircularProgressIndicator(),
);
}
return ListView.builder(
itemCount: snapshot.data?.docs.length,
itemBuilder: (context, i){
QueryDocumentSnapshot<Object?>? ds = snapshot.data?.docs[i];
return Text("$snapshot.data?.docs[i].data()!['call']");
});
}
),
);
}但是,它不输出存储在数据库中的实际数据。我得到以下输出:
AsyncSnapshot<QuerySnapshot<Object?
>>(ConnectionState.active,Instance of '_JsonQuerySnapshot',null, null).data?.docs[i].data()!['call']我应该怎么做才能得到存储在数据库中的数据?(字段名为“call”)
发布于 2022-05-17 11:09:31
为了实现流构建器与云防火墙检索现场数据,您可以遵循StreamBuilder文档和链接相关的解释流生成器在颤振。
正如前面提到的线程,您可以使用以下代码通过streambuilder检索数据:
正文:新StreamBuilder(流:StreamBuilder构建器:(上下文,快照){ if (!snapshot.hasData) {返回文本( 'No .‘);} snapshot.data.documents;返回新Lost_Card( headImageAssetPath : items );} 如果要从许多文档中创建列表生成器,请按以下方式使用 返回新的ListView.builder( itemCount: snapshot.data.documents.length,itemBuilder:(上下文,索引){ DocumentSnapshot ds = snapshot.data.documentsindex;返回新Lost_Card( headImageAssetPath : ds"url";);
有关更多信息,您可以参考文档,其中解释了如何使用云防火墙进行实时更新。
发布于 2022-07-27 04:16:23
试试这个来返回你的数据
return Text(ds['enterYourDataFieldName']);发布于 2022-05-14 07:33:27
您想要实现的关注点是RealTime数据库,而不是为此而创建的。
https://stackoverflow.com/questions/72238033
复制相似问题