Next.js: Aplikasi Firebase bernama '[DEFAULT]' sudah ada (aplikasi/aplikasi duplikat)

Dibuat pada 17 Mei 2017  ·  10Komentar  ·  Sumber: vercel/next.js

Saya memulai proyek berdasarkan https://github.com/zeit/next.js/tree/v3-beta/examples/with-firebase

Kesalahan yang saya miliki saat mengimpor firebase di lebih dari satu komponen.

Dalam file awal firebase ini:

`impor firebase dari 'firebase'

const firebaseConfig = {
apiKey: "fdsfsdfdsf",
authDomain: "fdsfdsfsdfdsf",
databaseURL: "sdfdsfdsf",
projectId: "dsfdsfdsf",
storageBucket: "dsfdsfdsf",
messagingSenderId: "dsfdsfsdfdsf"
}

const FbApp = firebase.initializeApp(firebaseConfig)

ekspor default FbApp.auth()`

Kemudian pada komponen:

import firebase from '../lib/firebaseClient'

Dengan satu komponen berfungsi dengan baik, tetapi jika saya menambahkan komponen baru dengan import firebase from '../lib/firebaseClient' aplikasi gagal:

Firebase: Aplikasi Firebase bernama '[DEFAULT]' sudah ada (aplikasi/aplikasi duplikat).
FirebaseError: Firebase: Aplikasi Firebase bernama '[DEFAULT]' sudah ada (aplikasi/aplikasi duplikat).

Komentar yang paling membantu

Anda dapat memeriksa firebase.apps untuk melihat apakah sudah dimuat. Jika Anda hanya memuatnya sekali, maka Anda bisa memeriksa panjangnya. Jika Anda memiliki beberapa maka Anda dapat memeriksa setiap nama aplikasi.

if (!firebase.apps.length) {
    firebase.initializeApp({});
}

http://stackoverflow.com/questions/37652328/how-to-check-if-a-firebase-app-is-already-initialized-on-android

Semua 10 komentar

Anda dapat memeriksa firebase.apps untuk melihat apakah sudah dimuat. Jika Anda hanya memuatnya sekali, maka Anda bisa memeriksa panjangnya. Jika Anda memiliki beberapa maka Anda dapat memeriksa setiap nama aplikasi.

if (!firebase.apps.length) {
    firebase.initializeApp({});
}

http://stackoverflow.com/questions/37652328/how-to-check-if-a-firebase-app-is-already-initialized-on-android

Solusinya:

`impor firebase dari 'firebase'

mencoba {
firebase.initializeApp({
databaseURL: 'dfgdfg'
})
} tangkap (keliru) {
// kita melewatkan pesan "sudah ada" yaitu
// bukan kesalahan aktual saat kami memuat ulang panas
if (!/sudah ada/.test(err.message)) {
console.error('Firebase initialization error', err.stack)
}
}

const fb = basis api
ekspor fb` . default

masalahnya adalah karena memanggil metode inisialisasi firebase lebih dari beberapa kali . saya memiliki masalah yang sama ini. dan saya dapat memperbaikinya dengan membatasi panggilan metode inisialisasi lebih dari sekali. buat konfigurasi firebase dalam satu kelas dan jadikan sebagai kelas tunggal.

Saya baru mengenal firebase dan pengembang web baru-baru ini. Saya memiliki masalah ini. Masalah saya disebabkan oleh menautkan file javascript saya di kepala dan di badan file html saya. Saya secara khusus memiliki tag skrip firebase dan js di kepala html dan tag skrip js lainnya di akhir tag tubuh. Perbaikan saya adalah menghapus semua tag skrip dari kepala dan meletakkannya di bagian bawah badan.

Itu solusi saya:

// Config file
import * as firebase from "firebase";

const config = {...};

export default !firebase.apps.length ? firebase.initializeApp(config) : firebase.app();

// Other file
import firebase from '../firebase';
...
console.log(firebase.name);
console.log(firebase.database());

Solusi brilian! @purii

@Purii Anda baru saja menyelamatkan hari saya

Jika Anda menggunakan firestore, gunakan:

export default !firebase.apps.length
  ? firebase.initializeApp(config).firestore()
  : firebase.app().firestore();

@jide terima kasih

Saya juga harus memasukkan import 'firebase/firestore';

import * as firebase from 'firebase'
import 'firebase/firestore';

const config = {
  apiKey: "***",
  authDomain: "***",
  databaseURL: "***",
  projectId: "***",
  storageBucket: "***",
  messagingSenderId: "***"
};

export default !firebase.apps.length 
  ? firebase.initializeApp(config).firestore()
  : firebase.app().firestore();

@Purii dan @jide , terima kasih atas solusinya

Apakah halaman ini membantu?
0 / 5 - 0 peringkat

Masalah terkait

knipferrc picture knipferrc  ·  3Komentar

rauchg picture rauchg  ·  3Komentar

irrigator picture irrigator  ·  3Komentar

DvirSh picture DvirSh  ·  3Komentar

jesselee34 picture jesselee34  ·  3Komentar