Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

222
Views
La actualización de Firebase web v9 interrumpe react-firebase-hooks "useCollectionData()"

Estoy tratando de actualizar un código de Firebase en un proyecto de React al nuevo sdk modular web v9 que Firebase lanzó recientemente. El proyecto que se está actualizando usa el enlace useCollectionData() de react-firebase-hooks , que falla al cambiar al nuevo SDK. Obtengo el siguiente error en mi consola 3 veces cuando intento ejecutar mi código portado.

index.esm.js:101 TypeError no detectado: v1.isEqual no es una función

Un ejemplo mínimo de código web v8 en funcionamiento:

 import firebase from 'firebase/app' import 'firebase/firestore' import { useCollectionData } from "react-firebase-hooks/firestore" firebase.initializeApp({ //config here }) const firestore = firebase.firestore(); function Foo() { const messagesRef = firestore.collection('messages') const query = messagesRef.orderBy('createdAt').limit(25) const [messages] = useCollectionData(query, { idField: 'id' }) return (<> {messages} </>) }

Mi intento de portar a v9 que causa el error:

 import { initializeApp } from "firebase/app" import { getFirestore } from "firebase/firestore" import { useCollectionData } from "react-firebase-hooks/firestore" const app = initializeApp({ //config here }) const db = getFirestore(app) function Foo() { const messagesRef = collection(db, "messages") const q = query(messagesRef, orderBy("createdAt"), limit(25)) const [messages] = useCollectionData(q, { idField: "id" }) return (<> {messages} </>) }

Estoy actualizando mis dependencias de

 "dependencies" : { "firebase": "^7.20.0", "react": "^16.13.1", "react-dom": "^16.13.1", "react-firebase-hooks": "^2.2.0", }

a

 "dependencies" : { "firebase": "^9.0.2", "react": "^17.0.2", "react-dom": "^17.0.2", "react-firebase-hooks": "^3.0.4", }

Este documento de Firestore tiene ejemplos que usé para escribir mi código actualizado. También usé este documento de Firestore para comprender mejor los cambios en collection() .

Gracias por tu ayuda.

about 4 years ago · Juan Pablo Isaza
1 answers
Answer question

0

Actualización 3 de noviembre de 2021:

Se lanzó React Firebase Hooks v4 que es compatible con v9 y también requiere React 16.8.0 o posterior y Firebase v9.0.0 o posterior.


La biblioteca React Firebase Hooks no parece ser compatible con Firebase Modular SDK todavía (última versión de abril de 2021). Es posible que compat usar la versión compatible que permite usar una sintaxis de espacio de nombres más antigua incluso en v9.0.0+ y no tiene los beneficios de la sacudida del árbol:

 import firebase from 'firebase/compat/app' import 'firebase/compat/firestore' // import 'firebase/compat/[SERVICE_NAME]'
about 4 years ago · Juan Pablo Isaza Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!