Ceci est le streambuilder im en utilisant pour accéder à tous les documents à la fois p>
xxx pré> Puis-je utiliser docid: snapshot.data.document [index] .Documumide pour accéder à l'ID du document individuellement? sinon quelle est l'option? Merci p> blockQuote> blockQuote>
3 Réponses :
Vous pouvez obtenir la documentation de cette façon
StreamBuilder( stream: Firestore.instance.collection('projects').snapshots(), builder: (context, snapshot) { if (!snapshot.hasData) return Text('data is loading'); return ListView.builder( itemBuilder: (ctx, index) { QuerySnapshot snap = snapshot.data; // Snapshot List<DocumentSnapshot> items = snap.documents; // List of Documents DocumentSnapshot item = items[index]; Specific Document return ProjectItem( id: item.data['id'], title: item.data['title'], members: item.data['members'], complexity: item.data['complexity'], affordability: item.data['affordability'], duration: item.data['duration'], docid: item.documentID, // Document ID ); }, itemCount: snapshot.data.documents.length, ); }, ), )
J'ai mon code de travail avec un autre extrait, mais cela a l'air légitime aussi, merci!
Vous pouvez créer un constructeur d'objet personnalisé pour utiliser des données à partir de l'instantané de document.
return ProjectItem.fromFirestore( snapshot.data.documents[index] );
Marquer la question comme répondu
Cela a fonctionné pour moi: P>
xxx pré> blockQuote>