firebase - 将 Firebase 集成到 Vue.js 2 时出现“未捕获的 TypeError : firebaseApp. firestore 不是函数”

标签 firebase vue.js google-cloud-firestore vuefire

我在检查时收到此错误

Uncaught TypeError: firebaseApp.firestore is not a function.

使用的依赖项:

"vuefire": "^3.0.0-alpha.2"

"firebase": "^9.0.2"

我的db.js文件:

import * as Firebase from "firebase/app";
import 'firebase/firestore';
import { initializeApp } from "firebase/app";

const firebaseApp = Firebase.initializeApp({
      apiKey: "x***************************",
      authDomain: "a**********.firebaseapp.com",
      projectId: "f****demo-****",
      storageBucket: "f**********.appspot.com",
      messagingSenderId: "2***********",
      appId: "1:**********:web:2**************"
});
export const db = initializeApp(firebaseApp.firestore());

错误如何解决?

最佳答案

在 Firebase SDK v9 中,API 界面更改为使用模块化、树可摇动的代码。几乎所有您看到的文档或示例代码都是为需要更新的 v8 或更旧的 Firebase SDK 版本编写的。

了解更多 about migrating here .

对于您的具体情况,您需要使用 getFirestore() 方法,传入相关的 FirebaseApp 实例:

import { getFirestore } from "firebase/firestore";

export const db = getFirestore(firebaseApp);

尽管如此,因为这是默认的未命名实例,您也可以只使用:

import { getFirestore } from "firebase/firestore";

export const db = getFirestore();

关于firebase - 将 Firebase 集成到 Vue.js 2 时出现“未捕获的 TypeError : firebaseApp. firestore 不是函数”,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/69240255/

相关文章:

Firebase Cloud Firestore 抛出 "client is offline"

firebase - 在哪里可以查看和管理 FCM 中的主题

java - 当 Firebase 中的值发生更改时,Sharedpreferences 值会更新

javascript - 非被动滚动事件处理程序的控制台警告

ios - Firestore线程1 : Fatal error when loading data to tableview using real time listener (Swift 4)

flutter - 注意 : “Cloud Firestore Overrides a deprecated API”

javascript - 从 Firestore 收到图像时如何等待 promise ?

android - 关于 "100 multiple senders"的 FCM 限制实际上意味着什么?

javascript - 如何在 Vue.js 3 设置中获取查询参数?

vue.js - 在 vuetify v-text-field Prop 中使用 HTML