Vue: Firebase: ошибка в подключенном хуке: «FirebaseError: Приложение Firebase« [DEFAULT] »не создано» - PullRequest
0 голосов
/ 29 января 2020

Я строю Vue SPA и проверил много сообщений, прежде чем публиковать это.

Я не уверен, что я делаю неправильно.

Ниже мое приложение. Vue:

<template>
    <div id="app">
        <Navigation />
        <router-view class="container" :user="user" />
    </div>
</template>

<script>
import Navigation from '@/components/Navigation.vue';
// import db from './db.js';
import Firebase from 'firebase';
export default {
    name: 'App',
    data: function() {
        return {
            user: null,
        };
    },
    mounted() {

        Firebase.auth().onAuthStateChanged(user => {
            if (user) {
                this.user = user.email;
            }
        });
    },
    components: {
        Navigation,
    },
};
</script>

<style lang="scss">
$primary: #37c6cf;
@import '../node_modules/bootstrap/scss/bootstrap';
</style>

Примечание: Я прокомментировал импорт из базы данных. js, который можно найти после первого Импортировать. Если я включаю Vue CLI выдает другую ошибку.

в дБ. js:

import firebase from 'firebase';
const firebaseConfig = {
    apiKey: 'yourkey',
    authDomain: 'domainnew.firebaseapp.com',
    databaseURL: 'yourdomain.com',
    projectId: 'yourproject',
    storageBucket: 'test',
    messagingSenderId: '454545',
    appId: '1:444d96:web:d78df',
    measurementId: 'G-69599595',
};

// Initialize firebase
const firebaseApp = firebase.initializeApp(firebaseConfig);
firebase.analytics();
export default firebaseApp.firestore();

В консоли постоянно отображаются две ошибки, и мой Vue не получает мой адрес электронной почты из Firebase.

enter image description here

Может ли кто-нибудь помочь в этом.

1 Ответ

1 голос
/ 30 января 2020

Следующее должно сделать трюк:

дБ. js файл

import firebase from 'firebase/app';
import "firebase/analytics";
import 'firebase/firestore';
import 'firebase/auth';

const firebaseConfig = {
    apiKey: 'yourkey',
    authDomain: 'domainnew.firebaseapp.com',
    databaseURL: 'yourdomain.com',
    projectId: 'yourproject',
    storageBucket: 'test',
    messagingSenderId: '454545',
    appId: '1:444d96:web:d78df',
    measurementId: 'G-69599595',
};

firebase.initializeApp(firebaseConfig);



const db = firebase.firestore();
const auth = firebase.auth();
const analytics = firebase.analytics();

export { db, auth, analytics };

Приложение. js файл

<template>
    <div id="app">
        <Navigation />
        <router-view class="container" :user="user" />
    </div>
</template>

<script>
import Navigation from '@/components/Navigation.vue';
const fb = require('./db.js');

export default {
    name: 'App',
    data: function() {
        return {
            user: null,
        };
    },
    mounted() {

        fb.auth.onAuthStateChanged(user => {
            if (user) {
                this.user = user.email;
            }
        });
    },
    components: {
        Navigation,
    },
};
</script>

<style lang="scss">
$primary: #37c6cf;
@import '../node_modules/bootstrap/scss/bootstrap';
</style>
...