Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

236
Visualizações
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 Respostas
Responde à pergunta

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 Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda