이미 초기화 되어있는 경우에 초기화를 중복으로 하여 발생하는 것으로 파악하였다.
이러한 경우 아래와 같이 다시 초기화 하지 않고 기존 app을 사용하도록 코드를 수정해 주었다.
firebase.tsx
import { getApp, getApps, initializeApp } from 'firebase/app';
import { getFirestore } from '@firebase/firestore';
const firebaseConfig = {
apiKey: process.env.NEXT_PUBLIC_API_KEY,
authDomain: process.env.NEXT_PUBLIC_AUTH_DOMAIN,
projectId: process.env.NEXT_PUBLIC_PROJECT_ID,
storageBucket: process.env.NEXT_PUBLIC_STORAGE_BUCKET,
messagingSenderId: process.env.NEXT_PUBLIC_MESSAGING_SENDER_ID,
appId: process.env.NEXT_PUBLIC_APP_ID,
measurementId: process.env.NEXT_PUBLIC_MEASUREMENT_ID,
};
// 초기화 되어있는 경우 기존 app을 사용하도록 코드 수정
const app = !getApps().length ? initializeApp(firebaseConfig) : getApp();
export const db = getFirestore(app);