0
votes

Puis-je accéder à l'ID de document à l'aide de cet appel d'instantané?

Ceci est le streambuilder im en utilisant pour accéder à tous les documents à la fois xxx

Puis-je utiliser docid: snapshot.data.document [index] .Documumide pour accéder à l'ID du document individuellement? sinon quelle est l'option? Merci


0 commentaires

3 Réponses :


0
votes

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,
          );
        },
      ),
    )


1 commentaires

J'ai mon code de travail avec un autre extrait, mais cela a l'air légitime aussi, merci!



2
votes

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]
);


1 commentaires

Marquer la question comme répondu



0
votes

Cela a fonctionné pour moi: xxx


0 commentaires