Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

145
Vistas
Firebase obtiene datos de Firestore v9 reacciona

Estoy tratando de obtener los detalles del pedido de firestore usando la siguiente función. Pero aquí no devuelve ninguna respuesta y muestra que docSnap.data() no es una función

La estructura de mi base de datos es - Usuario/id de usuario/pedidos/datos

¿Cómo puedo obtener datos como respuesta sin ningún error?

Aquí está mi código a continuación:

 import React, { useState, useEffect } from "react"; import { db } from "./firebase"; import { collection, doc, getDoc, orderBy } from "firebase/firestore"; import "./Orders.css"; import { useStateValue } from "./StateProvider"; const Orders = () => { const [{ basket, user }, dispatch] = useStateValue(); const [orders, setOrders] = useState([]); useEffect(async () => { console.log(user?.uid); try { const docRef = doc(db, `${user?.uid}/orders/`); const docSnap = await getDoc(docRef); console.log(docSnap); } catch (e) { console.log(e); } }, []); return ( <div className="orders"> <h1>orders here</h1> </div> ); }; export default Orders;

Aquí está la ruta completa al documento que espero que lea la función.

ingrese la descripción de la imagen aquí

about 4 years ago · Juan Pablo Isaza
1 Respuestas
Responde la pregunta

0

Si db es un objeto FirebaseFirestore , esto no tiene sentido:

 const docRef = doc(db, `${user?.uid}/orders/`); const docSnap = await getDoc(docRef);

Está creando una referencia a un documento llamado orders en una colección user?.uid . Esto no coincide con su estructura de datos, que sería:

 const ordersRef = collection(db, `users/${user?.uid}/orders`);

Así que ahora ordersRef es una colección de la subcolección de pedidos para el usuario específico. Luego puede leerlo llamando a getDocs :

 const ordersQuerySnapshot = await getDocs(ordersRef);

Y recorrerlos con:

 ordersQuerySnapshot.docs.forEach((doc) => { console.log(doc.id, doc.data()); })
about 4 years ago · Juan Pablo Isaza Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda