获取userId后如何使用FutureBuilder?

问题描述 投票:0回答:1

如果你想获得一个用户列表,只需将qazxsw poi设置为Future Builders qazxsw poi

但是,如何使用Firestore.instance.collection("users").snapshots()使用FutureBuilder基于userId获取用户数据?

future:

这是我的FutureBuilder。试图显示用户喜欢的食物。

userDataRef()

任何建议将被认真考虑。

谢谢。

dart flutter google-cloud-firestore
1个回答
2
投票

您可以使用嵌套的 Future<Stream<DocumentSnapshot>> userDataRef() async { final FirebaseUser user = await auth.currentUser(); return Firestore.instance .collection("users") .document(user.uid).snapshots(); }

  FutureBuilder(
    future: Database.shared.userDataRef(),
    builder: (BuildContext context, snapshot) {
      if (!snapshot.hasData) {
        return Text("Error");
      }
      final doc = snapshot.data.documents;
      final List favoriteFoods = doc["favorite_foods"];


      return Text(favoriteFoods.toString());
    },
© www.soinside.com 2019 - 2024. All rights reserved.