nuxt.jsでfirebaseと連携したら表題のエラーが出ました。
##①firebase.jsフォルダを開きます
多分こんな感じファイルになってるかと。
firebase.js
import Vue from "vue"
import { firestorePlugin } from "vuefire"
import firebase from "firebase"
import "firebase/firestore"
Vue.use(firestorePlugin)
firebase.initializeApp({
apiKey: "うんたら",
authDomain: "うんたら.firebaseapp.com",
databaseURL: "https://うんたら.firebaseio.com",
projectId: "うんたら",
storageBucket: "うんたら.appspot.com",
messagingSenderId: "123456789",
appId: "1:123456789:web:123456789",
measurementId: "うんたら",
})
export const db = firebase.firestore()
export const auth = firebase.auth()
##②データを囲む
上記のfirebase.initializeApp({})をif(!firebase.apps.length){}で囲みます。
以下のようになります。
firebase.js
import Vue from "vue"
import { firestorePlugin } from "vuefire"
import firebase from "firebase"
import "firebase/firestore"
Vue.use(firestorePlugin)
if (!firebase.apps.length) {
firebase.initializeApp({
apiKey: "うんたら",
authDomain: "うんたら.firebaseapp.com",
databaseURL: "https://うんたら.firebaseio.com",
projectId: "うんたら",
storageBucket: "うんたら.appspot.com",
messagingSenderId: "123456789",
appId: "1:123456789:web:123456789",
measurementId: "うんたら",
})
}
export const db = firebase.firestore()
export const auth = firebase.auth()
これでエラーが解決してるはずです。
##その他
↓参考URL↓
Nuxt + Firebase: Firebase App named '[DEFAULT]' already exists (app/duplicate-app)
https://stackoverflow.com/questions/53887447/nuxt-firebase-firebase-app-named-default-already-exists-app-duplicate-ap