Estoy tratando de usar firebase para mi aplicación de chat desarrollada con React Native y recibo un error de seguimiento al enviar registros a firebase.
[TypeError: _firebaseConfig.default.database no es una función. (En '_firebaseConfig.default.database()', '_firebaseConfig.default.database' no está definido)]
Creé un archivo de configuración de Firebase como se muestra a continuación.
firebase-config.js
import Firebase from 'firebase/compat/app'; const firebaseConfig = { apiKey: '', databaseURL: '', projectId: '', appId: '', }; export default Firebase.initializeApp(firebaseConfig);Mensajes.js
import Firebase from './firebase-config'; export const sendMessage = async (from, to, message) => { try { return await Firebase.database() .ref('messages/' + from) .child(to) .set({ from: from, to: to, message: message, }); } catch (error) { console.log(error); } }; export const receiveMessage = async (from, to, message) => { try { return await getDatabase(Firebase) .ref('messages/' + to) .child(from) .push({ from: from, to: to, message: message, }); } catch (error) { console.log(error); } };No está importando el SDK de Realtime Database a ninguna parte, por lo que cuando intenta acceder a firebase.database() recibe un error que dice que no se puede encontrar.
Para solucionar esto, importe el SDK de Realtime Database después import Firebase from 'firebase/compat/app' .
import firebase from 'firebase/compat/app'; import 'firebase/database'; ...También recomiendo consultar el ejemplo en la guía de actualización sobre cómo actualizar las importaciones a la compatibilidad con v9 .