如何显示地图中的数据列表? - 颤动的Firestore

How to display a list of data from a map ? - flutter firestore

我正在构建一个事件管理应用程序。当用户买票时,票的详细信息就这样保存在数据库中。 Users -> (Current User ID) -> (map)bookedEvents -> eventId -> [event details]

当我像这样将其中一个事件 ID 作为静态字符串提供时,我设法显示了一个特定事件的数据。

StreamBuilder(
          stream: FirebaseFirestore.instance
              .collection('users')
              .doc(_uid)
              .snapshots(),
          builder: (context, snapshot) {
            if (!snapshot.hasData) {
              return Text("Loading");
            }
            var userDocument = snapshot.data;
            return Text(
              userDocument["bookedEvents"]["KFXvCj63y7GTjQcMKfVy"]
                  ["eventName"],
              style: TextStyle(fontWeight: FontWeight.bold, fontSize: 20),
            );
          }),

但我想在列表中显示所有事件名称。我能知道怎么做吗?非常感谢。

你应该尝试这样的事情:

var userDocument = snapshot.data;

final List<Widget> children = [];

userDocument['bookedEvents'].forEach((key, value) { 
children.add(Text(value['eventName'])); });   
 
return Column(children: children); // or Row(children: children); or ListView(children: children);