使用颤动从 Firestore 获取 Field 值

时间:2021-07-05 22:25:15

标签: firebase flutter google-cloud-firestore

我有一个名为 parent 的集合包含一个名为 class 的属性,我想为我在代码中指定的文档返回此属性的值,

我设法打印了该值,但在 .

之后我无法返回在比较中使用它的值
getSpecie(idetud) async {
DocumentReference documentReference = parsref.doc(idetud);
int specie = 0;
await documentReference.get().then((snapshot) {
  specie = snapshot["classe"];
  print(
      "======================================================================== field value");
  print(specie); // this works good 
});
return specie; // but this no !!!!

}

1 个答案:

答案 0 :(得分:0)

我认为发生的情况是打印有效,因为它在 then() 内部,但返回没有,当您调用该方法时,它遵循流程,最后一行中的硬币仍然没有预期值。如果是这样,您必须等待该值。

getSpecie(idetud) async {
  DocumentReference documentReference = parsref.doc(idetud);
  var snapshot = await documentReference.get();
  return snapshot["classe"];
}