【发布时间】:2019-12-18 09:07:56
【问题描述】:
我在 Flutter 中有一个与 Firestore 通信的异步函数。 有一个服务器功能正在运行,并且我指示任务完成的标志是我使用 StreamSubscription 收听的标志。 StreamSubscription 监听代码用 Future 异步函数包装,但我不明白如何从 StreamSubscription 的函数处理程序返回 Future。
static Future<bool> listenToProcess(
String doc, Function func) {
StreamSubscription<DocumentSnapshot> stream = Firestore.instance.collection('requests').document(doc)
.snapshots().listen((data){
if (data.data["done"])
func(true);
print ("change " + data.data["done"].toString());
});
}
该函数应等待流获得 done=true 未来答案。
【问题讨论】:
标签: asynchronous flutter dart google-cloud-firestore future