Tengo una estructura de subcolecciones y documentos anidados. Cada nombre de los documentos en la subcolección de experience representa el userId de usuario de algún usuario que tiene experiencia en ese juego.
Tengo un convertido que adjunta este userId de usuario al documento:
experienceEntity.userId = snapshot.id; experienceEntity.experience = snapshot.data().experience; Quiero consultar documentos de todas las subcolecciones de experience de todos los games que tienen un ID de userId determinado. Por ejemplo, quiero obtener todos los documentos que tengan el ID 400riCGTB0YkxAF52maPUr5jKPN2 de la captura de pantalla anterior. Estaba intentando esto:
const result = await firestore() .collectionGroup("experience") .withConverter(gameExperienceEntityConverter) .where("userId", "==", userId) .get(); return result.docs.map((snap) => snap.data()); ... pero devuelve una matriz vacía. Si elimino la cláusula where , devuelve todos los documentos de todas las subcolecciones de experience sin ningún tipo de filtrado (puede haber millones de ellos en este punto).