【发布时间】:2018-08-10 14:01:00
【问题描述】:
我使用以下函数从 Firestore 获取 userData:
Future<String>getRegisterUserData({String userID}) async {
Firestore.instance.collection("Users").document(userID).get().then(
(datasnapshot) {
if (datasnapshot.exists) {
return datasnapshot.data['Email'];
} else {
return "Loading...";
}
},
);
}
我像这样在我的 UserProfilePage 上执行这个函数:
_email = widget.firestore.getRegisterUserData(widget.userID).toString();
但我总是得到打印语句:'Future' 的实例而不是保存的电子邮件地址......
我也试试这个:
Future<String> getRegisterUserData({String userID}) async {
String email;
Firestore.instance.collection("Users").document(userID).get().then(
(datasnapshot) {
if (datasnapshot.exists) {
email = datasnapshot.data['Email'];
} else {
email = "Loading...";
}
},
);
return email;
}
打印语句总是一样的......
那么我的错误在哪里?我想在变量中的 UserProfilePage 上显示“电子邮件”的值,还是我的 firestore 函数不正确?
感谢您的帮助
【问题讨论】:
标签: dart google-cloud-firestore flutter