【问题标题】:How to fix undefined is not an object (evaluating 'firebase.apps.length')如何修复未定义的不是对象(评估'firebase.apps.length')
【发布时间】:2021-05-17 17:40:54
【问题描述】:

这是我的代码

import * as firebase from "firebase/app";
import "firebase/auth";
import "firebase/firestore";


const firebaseConfig = {
    apiKey: "removed",
    authDomain: "removed",
    projectId: "removed",
    storageBucket: "removed",
    messagingSenderId: "removed",
    appId: "removed",
    measurementId: "removed"
  };

  let app;

  if(firebase.apps.length === 0) {
      app = firebase.initializeApp(firebaseConfig);
  } else {
      app = firebase.app();
  }

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

  export { db, auth };

我的错误是

`undefined 不是一个对象(评估'firebase.apps.length') (D'

Evaluating module://firebase.js.js
  Evaluating module://screens/LoginScreen.js.js
  Evaluating module://App.js.js
  Loading module://App.js`

有什么帮助吗?谢谢

【问题讨论】:

  • firebase.apps 未定义...因此尝试读取长度属性会引发错误。尝试将条件更改为if(!firebase.apps)。 --- 我不习惯 firebase,所以把它当作 “尝试一下” ;)
  • 谢谢,@LouysPatriceBessette 我试过了,但我仍然有同样的错误
  • 同样的错误?检查是否定义了firebase 然后:console.log("firebase is: ", typeof(firebase));
  • 找到任何解决方案了吗?我自己也有这个错误......

标签: javascript firebase react-native firebase-realtime-database


【解决方案1】:

import * as firebase from "firebase/app"; 更改为import firebase from "firebase/app";

从 v7 升级到 v8 后它对我有用。

【讨论】:

    【解决方案2】:

    更改自:

    import * as firebase from "firebase/app";
    

    到:

    import * as firebase from "firebase";
    

    【讨论】:

      猜你喜欢
      • 2021-01-09
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-12-04
      • 2019-09-26
      • 2019-12-12
      • 2019-08-16
      • 2017-01-16
      相关资源
      最近更新 更多