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

233
Vistas
Conexión de Firestore a la aplicación React Native administrada por Expo

Estoy tratando de conectar Firestore (v 9.6.7) a mi aplicación. Estoy usando la sintaxis web 9. Mi código es casi directamente de las guías aquí .

Parece que:

 import { initializeApp } from 'firebase/app'; import { getFirestore } from 'firebase/firestore'; import { collection, getDocs } from "firebase/firestore"; // Initialize Firebase const firebaseConfig = { apiKey: ... authDomain: ..., projectId: ..., storageBucket: ..., messagingSenderId:..., appId: ..., measurementId: ... }; // Initialize Firebase const app = initializeApp(firebaseConfig); const db = getFirestore(app); // Read collection from Firestore and print it const querySnapshot = getDocs(collection(db, "Users")); console.log(querySnapshot); export { db }

La promesa devuelta es:

Promesa { "_U": 0, "_V": 0, "_W": nulo, "_X": nulo, }

¿Qué está yendo mal?

Gracias.

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

0

Amigo, cuando te digo que luché con esto durante dos días seguidos, me refiero a dos días seguidos de 8 horas.

La respuesta está en la fuente de firebase.

Lo primero que debe hacer es agregar un archivo metro.config.js a la raíz de su proyecto. Dentro agrega lo siguiente:

 const { getDefaultConfig } = require("metro-config"); const { resolver: defaultResolver } = getDefaultConfig.getDefaultValues(); exports.resolver = { ...defaultResolver, sourceExts: [ ...defaultResolver.sourceExts, "cjs", ], };

Esto permitirá extensiones de fuente "cjs".

Otra buena forma de imprimir tu colección desde firestore es así:

 const db = getFirestore() const colRef = collection(db, "collection") getDocs(colRef) .then((snapshot) => { let collection = [] snapshot.docs.forEach((doc) => { collection.push({...doc.data(), id: doc.id }) }) })

Esta es una buena manera de imprimir en la consola de una manera mucho más amigable.

Pruébelo y vea si funciona. Si no es así, por favor comente para que pueda ayudar más.

Quiero etiquetar la respuesta original de stackoverflow para el archivo metro.config.js porque no se me ocurrió esto por mi cuenta, pero no puedo encontrarlo. Si lo hago, editaré esta publicación con el enlace para obtener crédito.

Edito: lo encontré. Crédito aquí .

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