我正在使用Dart,Flutter和Firebase制作一个应用程序。有注册/登录,我正在使用Cloud Firestore作为数据库。在我的Cloud Firestore中,用户UID是文档ID,每个用户都有特定的数据(结果)。
我只想检索当前用户的数据(存储在Firestore中)并显示在屏幕上。This is my cloud firestore image
void submitit(double n, m) async {
final FirebaseUser user = await FirebaseAuth.instance.currentUser();
final String usr = user.uid.toString();
if (_formKey.currentState.validate()) {
_formKey.currentState.save();
result = n * m;
}
DatabaseService(uid: usr).updateUserData(result.toString()); // to store data in firestore
//data is successfully stored in firestore.
//now retrive this user's result only from firestore
有许多用户已经注册并登录。 现在,我只想从云Firestore中检索此用户的结果并显示在屏幕上。 我需要一个通用的解决方案,以便无论当前用户是谁,都将检索到相应的结果并将其显示在屏幕上。
答案 0 :(得分:1)
要检索当前登录用户的数据,则可以执行以下操作:
Future<DocumentSnapshot> getData() async {
var firebaseUser = await FirebaseAuth.instance.currentUser();
return await Firestore.instance.collection("result").document(firebaseUser.uid).get();
}