【问题标题】:How to solve Firebase: No Firebase App '[DEFAULT]' has been created - call Firebase App.initializeApp() (app/no-app)如何解决 Firebase:没有创建 Firebase App '[DEFAULT]' - 调用 Firebase App.initializeApp() (app/no-app)
【发布时间】:2021-07-21 05:51:32
【问题描述】:

我正在尝试使用 react 和 firebase 创建一个聊天室应用程序。最初,我在一次导入 auth 和 firestore 时遇到错误,即 import { auth, firestore } from 'react';,我尝试了 firebase.auth();和 firebase.firestore();我得到一个错误说'auth not defined no-def'和'firestore not defined no-def',现在我尝试了 const auth = firestore.auth();和 const firestore = firebase.firestore() 现在我收到一个错误“Firebase:没有创建 Firebase App '[DEFAULT]' - 调用 Firebase App.initializeApp() (app/no-app)。”...可以有人请帮帮我

附上我的代码

import firebase from 'firebase';
//import 'firebase/app';
//import { auth, firestore } from 'firebase';
//firebase.auth();
//firebase.firestore();
const auth = firebase.auth();
const firestore = firebase.firestore()

export const signup = (user) => {

    return async (dispatch) => {

        const db = firestore();
        auth()
        .createUserWithEmailAndPassword(user.email, user.password)
        .then(user => {
            console.log(user); 
        })
        .catch(error => {
            console.log(error);
        })

    }
}

【问题讨论】:

    标签: reactjs firebase firebase-authentication


    【解决方案1】:

    在您可以使用任何 firebase SDK 之前,您需要初始化您的 firebase 应用。

    此代码显示了您如何初始化应用程序:

    import firebase from "firebase/app";
    
    
    // Replace the following with your app's Firebase project configuration
    const firebaseConfig = {
      apiKey: "AIzaSyDOCAbC123dEf456GhI789jKl01-MnO",
      authDomain: "myapp-project-123.firebaseapp.com",
      databaseURL: "https://myapp-project-123.firebaseio.com",
      projectId: "myapp-project-123",
      storageBucket: "myapp-project-123.appspot.com",
      messagingSenderId: "65211879809",
      appId: "1:65211879909:web:3ae38ef1cdcb2e01fe5f0c",
      measurementId: "G-8GSGZQ44ST"
    };
    
    // Initialize Firebase
    firebase.initializeApp(firebaseConfig);
    
    

    不要忘记将配置替换为您的 firebase 项目的配置。 Here 你可以看到如何获取你的 Firebase 配置。

    之后你就可以运行你的代码了。

    确保在使用任何 SDK 之前调用初始化。为此,我还建议您将代码更改为:

    import firebase from 'firebase';
    //import 'firebase/app';
    //import { auth, firestore } from 'firebase';
    //firebase.auth();
    //firebase.firestore();
    
    
    export const signup = (user) => {
    
        return async (dispatch) => {
           const auth = firebase.auth();
           const firestore = firebase.firestore()
    
            const db = firestore();
            auth()
            .createUserWithEmailAndPassword(user.email, user.password)
            .then(user => {
                console.log(user); 
            })
            .catch(error => {
                console.log(error);
            })
    
        }
    }
    

    【讨论】:

    • 我已经初始化了我的 firebase 应用
    • 与您入伍的方式完全相同
    • //Web App's firebase configuration const firebaseConfig = { apiKey: "AIzaSyAuSFNSSRyiscvEG1QWxq0CMW9hJ9DqBec", authDomain: "learn-581c8.firebaseapp.com", projectId: "learn-581c8", storageBucket: "learn-581c8.appspot.com", messagingSenderId: "443182491044", appId: "1:443182491044:web:fdfe00e957e98455794d31", measurementId: "G-T858M7FKTK" }; //export auth = firebase.auth(); //export default firebase; firebase.initializeApp(firebase.config) window.store = store;
    • @jamalkasule 您是否在要测试的组件中对其进行了初始化?假设您正在使用反应路由器或其他东西
    • 这听起来像是初始化和您的应用调用 firebase 方法之间的竞争条件。
    猜你喜欢
    • 1970-01-01
    • 2021-07-13
    • 2021-06-12
    • 2021-07-25
    • 1970-01-01
    • 1970-01-01
    • 2022-11-07
    • 2023-01-24
    • 2020-12-11
    相关资源
    最近更新 更多