从';地图';在Firebase DB中以颤振方式进入ListView
我一直在尝试从Firebase数据库中的地图中读取数据,以便在我的第一个Flatter应用程序的列表视图中显示数据。我尝试了几种方法来达到这个目的,但都没有成功。我已经看到它至少显示了一些东西,但都集中在列表的一行中从';地图';在Firebase DB中以颤振方式进入ListView,firebase,flutter,dart,google-cloud-firestore,flutter-layout,Firebase,Flutter,Dart,Google Cloud Firestore,Flutter Layout,我一直在尝试从Firebase数据库中的地图中读取数据,以便在我的第一个Flatter应用程序的列表视图中显示数据。我尝试了几种方法来达到这个目的,但都没有成功。我已经看到它至少显示了一些东西,但都集中在列表的一行中 body: StreamBuilder( stream: Firestore.instance.collection('Users').snapshots(), builder: (context, snapshot) { if
body: StreamBuilder(
stream: Firestore.instance.collection('Users').snapshots(),
builder: (context, snapshot) {
if (!snapshot.hasData) return Text('Loading data.. Please wait');
return ListView(
children: snapshot.data.documents.map<Widget>((document) {
return new ListTile(
title: new Text(document['Group'].toString()),
);
}).toList(),
);
}
)
正文:StreamBuilder(
流:Firestore.instance.collection('Users').snapshots(),
生成器:(上下文,快照){
如果(!snapshot.hasData)返回文本('正在加载数据..请稍候');
返回列表视图(
子项:snapshot.data.documents.map((文档){
返回新的ListTile(
标题:新文本(文档['Group'].toString()),
);
}).toList(),
);
}
)
my db中的映射:
其结果是:
请有人帮我构建我的Aweasome Flatter应用程序。要在每个
用户中迭代组
地图
,您需要首先检索您的用户集合:
List users = List();
final docs = await Firestore.instance.collection('user').getDocuments();
docs.forEach((doc) {
users.add(doc.data)
});
然后,您需要在视图中迭代该列表,如下所示:
ListView.builder(
itemCount: users['Group'].length
itemBuilder: (context, index) {
return Text(users['Group'][index].toString());
}
如果您希望使用StreamBuilder,我相信您必须将您的
组
映射更改为子集合。要在每个用户
中迭代组
映射,您需要首先检索您的用户集合:
List users = List();
final docs = await Firestore.instance.collection('user').getDocuments();
docs.forEach((doc) {
users.add(doc.data)
});
然后,您需要在视图中迭代该列表,如下所示:
ListView.builder(
itemCount: users['Group'].length
itemBuilder: (context, index) {
return Text(users['Group'][index].toString());
}
如果您希望使用StreamBuilder,我相信您必须将
组
映射更改为子集合。您想实现什么?当前,您正在迭代用户集合。你想在每个用户内部迭代你的群组地图吗?嗨,鲁道夫。是的,没错。因此,如果您查看DB屏幕截图,我想显示以下内容:第一个、第四个、第二个、第三个以及它们的布尔值您想实现什么?当前,您正在迭代用户集合。你想在每个用户内部迭代你的群组地图吗?嗨,鲁道夫。是的,没错。因此,如果您查看DB屏幕截图,我想显示以下内容:第一个第四个第二个第三个以及它们的布尔值