【问题标题】:firebase.database is not a function . [Version 7.13.2 of firebase]firebase.database 不是函数。 [firebase 7.13.2 版]
【发布时间】:2020-07-17 13:02:40
【问题描述】:

我正在尝试将 firebase 与 javascript 连接以从网络读取和写入,但我无法做到这一点。我使用的是 7.13.2 版本的 firebase。

我正在尝试从 firebase 读取此内容:

{
  "device" : {
    "5C:CF:7F:06:01:AD" : {
      "accuracy" : "39",
      "lat" : "4.6740861",
      "lng" : "-74.0916290"
    },
    "5C:CF:7F:D0:8F:44" : {
      "accuracy" : "30",
      "lat" : "4.6740022",
      "lng" : "-74.0915909"
    }
  }
}

错误在这里检测到:

var database = firebase.database();

这在文档https://firebase.google.com/docs/database/web/start?hl=es-419中显示

我不知道是否是计费主题,因为我使用免费层的firebase。 我感谢任何帮助。

下面我显示代码:

<html>
<head>
    <title></title>
        <meta name="viewport" content="initial-scale=1.0">
    <meta charset="utf-8">
</head>
<body>
    <!--Muestra el contenido de lectura desde firebase-->
<div id="val"></div>
</body>

<!-- The core Firebase JS SDK is always required and must be listed first -->
<script src="https://www.gstatic.com/firebasejs/7.13.2/firebase-app.js"></script>

<script>
  // Your web app's Firebase configuration
  var firebaseConfig = {
    apiKey: "<APIKEY>",
    authDomain: "example.firebaseapp.com",
    databaseURL: "https://example.firebaseio.com",
    projectId: "example",
    storageBucket: "example.appspot.com",
    messagingSenderId: "<SENDERID>",
    appId: "<APPID>"
  };
  // Initialize Firebase
  firebase.initializeApp(firebaseConfig);

  //Get a refence to the database service
  var database = firebase.database();


  ////////////Opereaciones de lectura y escritura. Obtenido desde la documentación: https://firebase.google.com/docs/database/web/read-and-write?hl=es//////////////////////

  //Operación de escritura o sobreescritura
  function writeDeviceData(mac, lat, lng, acc){
    firebase.database().ref('device/' + mac).set({
        //Las variables que se muestran abajo deben ser iguales a las 
        //Contenidas en realtime firebase
        lat:lat,
        lng: lng,
        acccuracy: acc
    });
  }

//Operación de lectura cuando detecta cambios en los datos de las variables
 var postElement = document.getElementById("val");
 var mac = "/DE:AD:BE:EF:00";

 var updateStarCount = function(element, value){
    element.textContent = value; }


 var starRead = firebase.database().ref('device/' + mac);
 starRead.on('value', function(snapshot){
    updateStarCount(postElement, snapshot.val());
 });

 console.log(database);
</script>
</html>

【问题讨论】:

  • 以后不要发布您的授权密钥。你能发布你得到的错误吗?

标签: javascript firebase iot


【解决方案1】:

我认为你错过了一个导入,除了 Firebase 的核心

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

看看这个页面: https://firebase.google.com/docs/web/setup?hl=fr-419#libraries-hosting-urls

考虑从帖子中删除您的凭据

const firebaseConfig = {
        apiKey: "APIKEY",
        authDomain: "AUTHDOMAIN",
        databaseURL: "TESTURL",
        projectId: "PROJECTID",
        storageBucket: "PROJECTBUCKET",
        messagingSenderId: "ID",
        appId: "APPID",
        measurementId: "MESUREID"
    };

【讨论】:

  • 关于 firebase-database.js 的缺失导入
猜你喜欢
  • 2017-10-24
  • 2020-10-24
  • 1970-01-01
  • 2020-04-18
  • 2022-01-25
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多