# #flutter #dart #google-cloud-firestore
Вопрос:
Я рассмотрел и перепробовал несколько способов получения идентификатора документа для данных каждого документа, но я не могу этого сделать. Пожалуйста, помогите.
окончательный _domainPost = FirebaseFirestore.экземпляр.коллекция(«домен разработки»);
StreamBuilder(
stream: _domainPost.snapshots(),
builder: (BuildContext context,
AsyncSnapshot<QuerySnapshot> snapshot) {
if (!snapshot.hasData)
return new Text("There are no records.");
if (snapshot.connectionState == ConnectionState.waiting)
return Center(child: CircularProgressIndicator());
List devDomainList = snapshot.data!.docs;
List<DevelopmentDomain> _records = devDomainList
.map(
(devDomainPost) => DevelopmentDomain(
title: devDomainPost['title'],
description: devDomainPost['description']),
)
.toList();
return ListView.builder(
padding:
const EdgeInsets.fromLTRB(20.0, 20.0, 20.0, 60.0),
itemCount: snapshot.data!.size,
itemBuilder: (context, index) {
return DevelopmentDomainCard(
developmentDomainRecord: _records[index],
isAdmin: _isAdmin,
);
},
);
},
)
Ответ №1:
Каждый документ снимается в моментальном снимке.данные!.docs будет иметь свойство id, содержащее идентификатор документа из Firestore.
В вашем случае, devDomainPost.id он должен быть у вас на карте.