我在一个网站上工作,并决定使用Firebase作为主机/数据库服务器。我使用npm来管理我的Firebase sdk,我在试图将Firestore导入我的网站时遇到了一个错误。我的firestore数据库在开发控制台上是可读可写的,所以它肯定存在。
为了解决这个问题,我决定制作一个Firebase .js,我从Firebase导入,然后导出我的数据库以在其他页面和脚本上使用。以下是firebase.js:
import { initializeApp } from "./node_modules/firebase/firebase-app.js"
import { getFirestore, collection, addDoc } from './node_modules/firebase/firebase-firestore.js';
const firebaseConfig = {
//config
};
export const app = initializeApp(firebaseConfig)
export const db = getFirestore(app)
export { collection, addDoc}
上面给出了错误:
provider.ts:130 Uncaught Error: Service firestore is not available
我使用/node_modules/firebase而不是firebase/的原因是因为它给了我错误:
Uncaught TypeError: Failed to resolve module specifier "firebase/firebase-app.js". Relative references must start with either "/", "./", or "../".
如果我使用静态页面,比如https://www.gstatic.com/firebasejs/9.19.1/firebase-firestore.js作为导入位置,它会显示
provider.ts:130 Uncaught Error: Service firestore is not available
我看过另外两个与此相关的帖子,并尝试了那里的建议,但没有任何帮助。其他import语句也适用于我的包。Json有"类型"; "模块"至于我的依赖项,我有{"firebase"; "^9.19.1"}。如有任何帮助,不胜感激。
我也有同样的问题。使用新版本对我有效。
import { initializeApp } from 'https://www.gstatic.com/firebasejs/9.23.0/firebase-app.js'
import { getFirestore } from 'https://www.gstatic.com/firebasejs/9.23.0/firebase-firestore.js'