Tengo una colección anidada en firebase que dice así:
await fire.firestore() .collection("groupsCategory") .doc(groupID) .collection('events') .doc(eventID) .collection("memberPicks") .onSnapshot((querySnapshot) => { if(isMounted){ console.log("print indi event heree " + querySnapshot.data().eventID) setEventName(querySnapshot.data().eventName) // setIndividualEventDetails(querySnapshot.data()) } cuando llegamos a la colección MemberPicks se ve así:
Lo que estoy tratando de hacer es básicamente agregar todo el contenido de esta colección a una lista para poder contar cuántas veces se llama cada nombre.
Pero no puedo combinar todos los documentos de esta colección con el código que tengo arriba y no estoy seguro de dónde me estoy equivocando.
Su querySnapshot es un objeto QuerySnapshot , que representa una lista de documentos. Por lo tanto, no tiene ninguna propiedad data() en sí misma, sino que expone una lista de documentos en su propiedad docs .
Para mostrar el ID de evento de cada uno de los documentos en la instantánea de su consulta, podría hacer lo siguiente:
.onSnapshot((querySnapshot) => { if(isMounted){ querySnapshot.docs.forEach((doc) => { console.log(doc.data().eventID) setEventName(doc.data().eventName) }); }