Traté de trabajar con la autenticación de Firabase usando React pero dice el error "Attempted import error: 'firebase/app' does not contain a default export (imported as 'firebase')" . Si uso import * as firebase from "firebase/app" , descanse del código que muestra errores.
import firebase from 'firebase/app'; import 'firebase/auth'; const app = firebase.initializeApp({ apiKey: process.env.REACT_APP_FIREBASE_API_KEY, authDomain: process.env.REACT_APP_FIREBASE_AUTH_DOMAIN, projectId: process.env.REACT_APP_FIREBASE_PROJECT_ID, storageBucket: process.env.REACT_APP_FIREBASE_STORAGE_BUCKET, messagingSenderId: process.env.REACT_APP_FIREBASE_MESSAGING_SENDER_ID, appId: process.env.REACT_APP_FIREBASE_APP_ID }); export const auth = app.auth(); export default app;Firebase modular SDK ( v9 ) se lanza oficialmente y npm install firebase ahora instala esto en lugar de la versión anterior con espacio de namespaced ( v8 ). Si está utilizando v9 , refactorice su código a esto:
import { initializeApp } from 'firebase/app'; import { getAuth } from 'firebase/auth'; import { getDatabase } from "firebase/database"; const app = initializeApp({...config}); export const auth = getAuth() const database = getDatabase(); export { auth, database }Recomiendo seguir la documentación y seguir usando el nuevo SDK modular. Si tiene una versión existente y desea usar la versión existente con espacio de nombres, puede reemplazar sus importaciones con bibliotecas compatibles de la siguiente manera:
import firebase from 'firebase/compat/app'; import 'firebase/compat/auth'; firebase.initializeApp({...config}) const auth = firebase.auth() const database = firebase.database()Mire este video de Firebase para comenzar con v9.