我有以下几行代码
bool check;
Firestore.instance.collection('tests').where('name',isEqualTo: snapshot['name'].replaceAll('.mp4','.txt')).getDocuments().then((docs){
if(docs.documents[0].exists) check = true;
else check = false;
});
debugPrint(check.toString());
这会产生一个错误,指出布尔值不能为null,因此如何从check
语句内部检索.then
的值,以便可以在外部使用.then
语句?
答案 0 :(得分:2)
如果使用#standardSQL
SELECT b.year, b.month, label, AVG(value) value
FROM `project.dataset.ts_b` b
JOIN `project.dataset.ts_a` a
ON a.year * 12 + a.month BETWEEN
b.year * 12 + b.month - 12 AND b.year * 12 + b.month - 1
GROUP BY year, month, label
子句,则需要在其中进行所有工作,并且无法在外部使用它的值,因为您不知道何时收到答案。
您可以在Row year month label value
1 2017 3 A 15.0
2 2017 4 B 20.0
那里找到答案,并用.then()
标记包含代码的方法。
await
或
async