Firebase App named ‘[DEFAULT]’ already exists (app/duplicate-app)
のエラーメッセージが出て、対応にちょっと詰まったので備忘的に残してみました。
これはfirebaseを複数のコンポーネントにインポートするときに発生するエラーです。
この問題は、firebase のinitialize メソッドを複数回呼び出すために発生してしまうそうですね。
initializeメソッドの呼び出しを制限することで対応しました。
firebase構成を1つのクラスで作成し、シングルトンクラスとして作成します。
つまり、
if (!firebase.apps.length) {
firebase.initializeApp(firebaseConfig);
}
毎回firestore は呼びたいが、firebase の初期化まで何度も呼んでいると起きてしまうエラーなので2度目は起きないように上記のif 文で対応できるって話。