認証にFirebase Authenticationを使ってみたのですが、
FirebaseError: Firebase: Firebase App named '[DEFAULT]' already exists
何回かログインを繰り返していると、こんなエラーがコンソールに出力されて動かなくなります。
なんでしょう。
Firebaseのバージョンは7.15.5
となっております。
↓Firebaseはこのような形で初期化しています。
firebase.ts
import firebase from "firebase/app";
import "firebase/firestore";
import "firebase/firebase-storage";
import "firebase/auth";
// firebaseコンソールから取得
const firebaseConfig = {
apiKey: "xxxxx",
authDomain: "sample.firebaseapp.com",
databaseURL: "https://sample.firebaseio.com",
projectId: "sample",
storageBucket: "sample.appspot.com",
messagingSenderId: "344403761159",
appId: "yyyyy",
measurementId: "zzzzz",
};
// Initialize Firebase
firebase.initializeApp(firebaseConfig);
export default firebase;
export const auth = firebase.auth();
firebase.initializeAppが複数回呼ばれていることが原因でしたので、
firebase.ts
// Initialize Firebase
if (firebase.apps.length === 0) {
firebase.initializeApp(firebaseConfig);
}
初期化の部分をこのように修正いたしました。
無事コンソールにエラーメッセージは出なくなりました。
参考
if (!firebase.apps.length) {
firebase.initializeApp({});
}
https://stackoverflow.com/questions/43331011/firebase-app-named-default-already-exists-app-duplicate-app