Encontré un problema al obtener datos de firestore. Realmente no puedo entender por qué no hay una función de colección en productDoc.ref, y agradecería mucho si alguien pudiera ayudar con esto.
Estoy usando la última versión de Firebase, pero aún no tengo acceso a la subcolección de precios si tuviera que seguir los documentos de firebase v9.
useEffect(() => { const q = query(collection(db, "products"), where("active", "==", true)); // console.log(db.collection("products").getDocuments()); const unsub = onSnapshot(q, (querySnapshot) => { const products = {}; querySnapshot.forEach(async (productDoc) => { products[productDoc.id] = await productDoc.data(); console.log(await productDoc, "ref"); const priceSnap = await productDoc.ref.collection("prices").get(); priceSnap.doc.forEach((price) => { products[productDoc.id].price = { priceId: price.id, priceData: price.data(), }; }); }); setProducts(products); }); }, []); 
No puede encadenar la llamada de collection desde un objeto DocumentReference en la API modular.
En su lugar, debe pasar DocumentReference a una llamada a la función de collection de nivel superior:
const priceSnap = await getDocs(collection(productDoc.ref, "prices"));