Я искал везде и не могу найти никаких ресурсов по этому вопросу.Используя Flutter, я пытаюсь заставить создатель Future Listview заполнить, используя один документ в firestore, используя карту / объект.Моя текущая структура в firestore выглядит следующим образом:
(Collection)Restaurants
(Document)California
(Map)Locations
(String) A0 = Los Angeles
(String) A1 = LA Restaurant 1
(String) A2 = LA Restaurant 2
(String) A3 = LA Restaurant 3
(String) B0 = San Diego
(String) B1 = SD Restaurant 1
(String) B2 = SD Restaurant 2
(String) B3 = SD Restaurant 3
Каждый найденный мной ресурс помещает каждый из объектов Map в свой собственный документ, а затем извлекает коллекцию целиком, чтобы заполнить список.Можно ли использовать Карту из одного документа, чтобы сделать то же самое?Если так, как бы вы его нашли?
body: new Container(
child: FutureBuilder(
future: getList(),
builder: (_, snapshot){
if(snapshot.connectionState == ConnectionState.waiting){
return Center(
child: CircularProgressIndicator(),
);
}else{
return ListView.builder(
itemCount: snapshot.data["California.Locations"].length,
itemBuilder: (_, index){
if(snapshot.data["California.Location"] == "A0"){
return ListTile(
title: new Center(child: Text(snapshot.data[index].data,
style: TextStyle(fontSize: 25.0),),),
);
}else if(snapshot.data["California.Location"] != "A0") {
return ListTile(
title: Text(snapshot.data[index].data["name"],
style: TextStyle(
fontWeight: FontWeight.w500,
color: Colors.black),
),
onTap: (){
Navigator.push(
context,
MaterialPageRoute(builder: (context)=> RestaurantDetail())
);
},
);
}
});
}}),
),
Мои операторы if должны получить LA и San Diego в качестве заголовков в списке.