'将FireBase集成到Vue.js2时,未捕获的TypeError:FirebaseApp.Firestore不是函数

检查>;>;未捕获的TypeError:FirebaseApp.Firestore不是函数时出现此错误。 使用的依赖项:";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());

api

在Firebase SDK的v9中,推荐答案界面更改为使用模块化的、可树抖动的代码。您看到的几乎所有文档或示例代码都是为需要更新的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();

相关文章