我有两种方法,第一种用于获取存储在Firestore中的地图
Future daysMap(FirebaseUser user, String packageCode, int totalDays) async {
await users.document(user.uid).collection('myPackages')
.document(packageCode)
.get().then((doc){
// print(doc.data['DaysMap']);
return doc.data['DaysMap'];
});
}
它可以正常工作并打印出地图。第二种方法是将Firestore中的地图设置为新地图,以便在其上循环。
currentWorkout(FirebaseUser user, String packageCode,totalDays) async {
Map<dynamic, dynamic> days = await daysMap(user, packageCode, totalDays);
print(days);
}
当我打印新地图“天”时,它总是打印为空。
答案 0 :(得分:1)
尝试使用 async / await 样式。
Future daysMap(FirebaseUser user, String packageCode, int totalDays) async {
DocumentSnapshot doc = await users.document(user.uid).collection('myPackages').document(packageCode).get();
return doc.data['DaysMap'];
}