这是我的代码。我想返回我的数据memo_list
。 memo_list
在代码here
中具有价值。
但是memo_list
返回空值。
我不知道为什么删除了数据。
List fetchMemosFromAllUsers(List<dynamic> users){
List memo_list = List();
for(final user in users){
FirebaseFirestore.instance.collection("MEMO").where(KEY_USERKEY, isEqualTo: user).get().then((docs) {
if(docs.docs.isNotEmpty){
for(int i = 0; i < docs.docs.length; i++){
memo_list.add(docs.docs[i].data()); <-------here
}
}
});
}
return memo_list;
}
答案 0 :(得分:2)
您不是在等待未来的来临。 memo.list在执行.then()之前返回,因此memo_list始终为空。
尝试
Future<List> fetchMemosFromAllUsers(List<dynamic> users) async {
List memo_list = List();
for(final user in users){
await FirebaseFirestore.instance.collection("MEMO").where(KEY_USERKEY, isEqualTo: user).get().then((docs) {
if(docs.docs.isNotEmpty){
for(int i = 0; i < docs.docs.length; i++){
memo_list.add(docs.docs[i].data()); <-------here
}
}
});
}
return memo_list;
}