Svelte Firebase:未解析的函数或方法 firestore()

Svelte Firebase: Unresolved function or method firestore()

我正在使用 svelte 处理带有 firebase 的待办事项列表。我想我已经安装了所有东西,但我在 firebase.js 文件中收到错误:Unresolved function or method firestore() 与 auth() 相同。 这是什么原因? 我的代码:

import firebase from "firebase/app";
import "firebase/auth";
import "firebase/firestore";

var firebaseConfig = {
// my config here

};

firebase.initializeApp(firebaseConfig);

export const auth = firebase.auth();
export const googleProvider = new firebase.auth.GoogleAuthProvider();

export const db = firebase.firestore();

感谢您的帮助。

如果您使用最新推荐的 firebase 版本 (9),您的 firebase.js 如下所示:

import { initializeApp } from 'firebase/app';
import { getAuth, GoogleAuthProvider } from "firebase/auth";
import { getFirestore } from "firebase/firestore";
import { getStorage } from "firebase/storage";
import { firebaseConfig } from "../firebase.config.js";

const app = initializeApp(firebaseConfig);

export const auth = getAuth();
export const provider = new GoogleAuthProvider(); 
export const db = getFirestore(app);
export const storage = getStorage(app);

并且您必须在 package.json 中包含 firebase,例如:

{
  "name": "...",
  "version": "1.0.0",
  "author": "...",
  "repository": {
    "type": "git",
    "url": "https://github.com/..."
  },
  "license": "MIT",
  "type": "module",
  "scripts": {
    "dev": "vite",
    "build": "vite build",
    "serve": "vite preview"
  },
  "devDependencies": {
    "@sveltejs/vite-plugin-svelte": "^1.0.0-next.30",
    "svelte": "^3.44.0",
    "vite": "^2.6.12",
    "firebase": "^9.1.3",
  }
}

这对我来说很好。