Estoy tratando de mostrar los datos de firestore. Pero estoy recibiendo un error de la siguiente manera.
WEBPACK_IMPORTED_MODULE_1__firebase_init .a.collection no es una función" error_image
Primero, creé init.js para inicializar Firebase y comenzar a usar los SDK en mi aplicación web. Importé varios módulos, pero no estoy seguro de si los necesito para mi aplicación de lista de tareas pendientes.
import * as firebase from "firebase/app"; import { initializeApp } from "firebase/app"; import { getAnalytics } from "firebase/analytics"; import { getfirestore, where, query } from 'firebase/firestore'; import { getFirestore, collection, getDocs } from 'firebase/firestore/lite'; const firebaseConfig = { apiKey: *****, authDomain: ***** projectId: ***** storageBucket: ***** messagingSenderId: ***** appId: *****, measurementId: ***** }; firebase.initializeApp(firebaseConfig); const app = initializeApp(firebaseConfig); const analytics = getAnalytics(app); // const db = getFirestore(app); export default getFirestore(app);A continuación, en mi archivo index.vue, importé db de init.js, que creé anteriormente. Y estoy tratando de consolar. Registrar los datos de firebase pero no funciona.
import db from '@/firebase/init' ... created(){ db.collection('smoothies').get() .then(snapshot => { snapshot.forEach(doc => { console.log(doc) }) })Intente eliminar esta línea firebase.initializeApp(firebaseConfig);
Inicializas firestore en la siguiente línea. const app = initializeApp(firebaseConfig);
Puede encontrar más instrucciones sobre cómo inicializar firestore aquí: https://www.npmjs.com/package/firebase
El problema parece ser su método de importación, que es import db from '@/firebase/init'
Intente esto importando db de la siguiente manera,
import { db } from 'firebase/firestore';