【问题标题】:I am getting this error - FirebaseError: Firebase: Firebase App named '[DEFAULT]' already exists with different options or config (app/duplicate-app)我收到此错误 - FirebaseError: Firebase: Firebase App named \'[DEFAULT]\' already exists with different options or config (app/duplicate-app)
【发布时间】:2022-12-22 03:01:14
【问题描述】:
import { initializeApp } from 'firebase/app'
import { getAuth } from 'firebase/auth'
import { getFirestore } from "firebase/firestore";
const firebaseConfig = {
apiKey: process.env.NEXT_PUBLIC_FIREBASE_PUBLIC_API_KEY,
authDomain: process.env.NEXT_PUBLIC_FIREBASE_AUTH_DOMAIN,
projectId: process.env.NEXT_PUBLIC_FIREBASE_PROJECT_ID
}
const app = initializeApp(firebaseConfig)
export const auth = getAuth()
export const db = getFirestore(app)
console.log('db', db)
我试过长度的东西,但它似乎不适用于 firebase v9。我也需要导出数据库。
无需连接到数据库,该应用程序就可以正常工作。
【问题讨论】:
标签:
reactjs
typescript
google-cloud-firestore
【解决方案1】:
经过大量的反复试验发现:)
import * as firebase from "firebase/app";
import { logEvent } from "firebase/analytics";
import { getAnalytics } from "firebase/analytics";
const firebaseConfig = {
apiKey: process.env.API_KEY,
authDomain: process.env.AUTH_DOMAIN,
projectId: process.env.PROJECT_ID,
storageBucket: process.env.STORAGE_BUCKET,
messagingSenderId: process.env.MESSAGING_SENDER_ID,
appId: process.env.APP_ID,
measurementId: process.env.MEASUREMENT_ID
};
let app;
if (!firebase.getApps().length) {
app = firebase.initializeApp(firebaseConfig);
} else {
// if already initialized, use that one
app = firebase.getApp();
}
export function analyticsLogEvents(event:string, params:any) {
let analytics;
if (typeof window !== "undefined") {
analytics = getAnalytics(app);
logEvent(analytics, event, params);
}
}