首页 > 解决方案 > 使用新版本的 Firebase 不断收到 Uncaught TypeError

问题描述

我过去曾在几个项目中使用过 firebase,并且配置非常简单。我在使用新版本的 firebase 时遇到问题 - 并且不断收到 TypeError 提示firebase.database() is not a function

以下是我的 HTML 中正文部分底部的脚本标签:

  <script src="https://www.gstatic.com/firebasejs/6.2.4/firebase-app.js"></script>
  <script src="https://code.jquery.com/jquery-3.4.1.min.js"
    integrity="sha256-CSXorXvZcTkaix6Yvo6HppcZGetbYMGWSFlBw8HfCJo=" crossorigin="anonymous"></script>
  <script src="assets/app.js"></script>

我的 JS 配置如下所示:

var firebaseConfig = {
  apiKey: apiKey,
  authDomain: authDomain,
  databaseURL: dbURL,
  projectId: id,
  storageBucket: sb,
  messagingSenderId: msid,
  appId: appId
};

firebase.initializeApp(firebaseConfig);

var database = firebase.database()

问题不在配置中,因为 firebase.initializeApp 工作正常 - 但我似乎无法找到官方文档的任何更新来解释为什么 firebase.database() 似乎不再工作。

标签: javascriptfirebase

解决方案


好吧,我自己能解决这个问题......

我只导入了基本的 firebase 脚本:

<script src="https://www.gstatic.com/firebasejs/6.2.4/firebase-app.js"></script>

但我还需要导入开发的 firebase SDK 以使我能够访问实时数据库功能,因此为什么firebase.database()不起作用。所以我不得不在上面引用的脚本之后导入一个新脚本:

<script src="https://www.gstatic.com/firebasejs/6.2.4/firebase.js"></script>

数据库功能现在似乎工作正常。


推荐阅读