更改为实时检索数据
Changing To Retrieve Data in Real Time
在这段代码中,我可以在开始 运行 此页面后从 Firestore 检索一次数据。是否可以实时 运行 以便能够实时从 Firestore 获取所有数据?
Future getMarker() async{
Firestore.instance.collection('markers').getDocuments().then((myData){
if(myData.documents.isNotEmpty){
for (int i = 0; i < myData.documents.length; i++){
initMarker(myData.documents[i].data, myData.documents[i].documentID);
}
}
});
}
当我将 getDocuments()
更改为 snapshots()
时,方法 then()
将给出一个错误,指出 then()
不是 Stream 类型。或者有什么方法可以解决这个问题。提前谢谢你。
如 doc, one option is to use the listen
method of the Stream
returned by the snapshots()
方法中所述。
该文档还展示了另一个选项的示例:使用 StreamBuilder
,它“帮助自动管理流状态并在您的应用程序中不再使用时处理流”。
在这段代码中,我可以在开始 运行 此页面后从 Firestore 检索一次数据。是否可以实时 运行 以便能够实时从 Firestore 获取所有数据?
Future getMarker() async{
Firestore.instance.collection('markers').getDocuments().then((myData){
if(myData.documents.isNotEmpty){
for (int i = 0; i < myData.documents.length; i++){
initMarker(myData.documents[i].data, myData.documents[i].documentID);
}
}
});
}
当我将 getDocuments()
更改为 snapshots()
时,方法 then()
将给出一个错误,指出 then()
不是 Stream 类型。或者有什么方法可以解决这个问题。提前谢谢你。
如 doc, one option is to use the listen
method of the Stream
returned by the snapshots()
方法中所述。
该文档还展示了另一个选项的示例:使用 StreamBuilder
,它“帮助自动管理流状态并在您的应用程序中不再使用时处理流”。