我尝试从Cloud Firestore读取同一文档中的多个数组(请参阅数据库图片),但现在我只能对这些数组的名称进行硬编码。 如何显示可变数量的数组?
我只需要一起阅读文档中的数据。
数据应该与Firestore同步,因此我将所有内容包装在Streambuilder
和Listview.builder
小部件中。我也尝试了一些数据反序列化,但是我不知道是否需要这个。
class HomeScreen extends StatelessWidget {
@override
Widget build(BuildContext context) {
return Scaffold(
backgroundColor: Colors.lightBlue,
//StreamBuilder
body: StreamBuilder(
stream: Firestore.instance
.collection('Variable School Collection')
.document('Today')
.snapshots(),
builder: (context, snapshot) {
//check if snapshot has data
if (!snapshot.hasData) {
return Text("Loading..", style: Theme.of(context).textTheme.title);
//if snapshot has data:
} else {
List<String> names = List.from(snapshot
.data['1']); //How can I get all arrays in the map?**
return ListView.builder(
scrollDirection: Axis.vertical,
shrinkWrap: true,
itemCount: 1,
itemBuilder: (context, index) {
return Card(
child: Column(
children: <Widget>[
Text(
names[0], //first element from array
style: Theme.of(context).textTheme.subtitle,
),
Text(
names[1], //second element from array
style: Theme.of(context).textTheme.subtitle,
),
Text(
names[2], //third element from array
style: Theme.of(context).textTheme.subtitle,
),
],
),
);
},
);
}
},
),
);
}
}
我的目标是:在Flutter应用程序中显示firebase文档中的所有阵列(今天)。
Firebase Data Structure with multiple arrays in the Document