如何解决 Firebase:没有创建 Firebase App '[DEFAULT]' - 调用 Firebase App.initializeApp() (app/no-app)
Posted
技术标签:
【中文标题】如何解决 Firebase:没有创建 Firebase App \'[DEFAULT]\' - 调用 Firebase App.initializeApp() (app/no-app)【英文标题】: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);
)
【问题讨论】:
【参考方案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: "AIzaSyAuSFNs-s-ryiscvEG1QWxq0CMW9hJ9DqBec", 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 方法之间的竞争条件。以上是关于如何解决 Firebase:没有创建 Firebase App '[DEFAULT]' - 调用 Firebase App.initializeApp() (app/no-app)的主要内容,如果未能解决你的问题,请参考以下文章
Stripe 和 Firebase:FirebaseError:collection() 的第一个参数应为 CollectionReference、DocumentReference 或 Fireba
如何解决 Firebase:没有创建 Firebase App '[DEFAULT]' - 调用 Firebase App.initializeApp() (app/no-app)
如何使用 Firebase 推送通知服务而不在自定义创建的框架 Xcode 中添加 GoogleService-Info.plist 文件