【问题标题】:How to get Data from Firebase-Database in Real-Time with Javascript如何使用 Javascript 实时从 Firebase-Database 获取数据
【发布时间】:2020-09-20 05:52:33
【问题描述】:

您好,一旦我的 Firebase 数据库中的值发生更改,我想自动实时生成警报。我的代码如下所示:

try {
        var ref = firebase.database().ref("URL").child("1");
        ref.on("child_changed", function(snapshot) {
          var changedPost = snapshot.val();
          alert(changedPost);
        });
        }
        catch(err) {
          alert("Error");
        }

如你所见,我的数据库结构是:

有人能告诉我这段代码有什么问题吗?为什么当我的数据库发生变化时我没有收到警报?

我将不胜感激。

【问题讨论】:

  • 请编辑问题以显示数据库中的实际数据。如果没有看到这一点,并将其与您的代码相匹配,我们就看不到实际可能出了什么问题。此外,您的代码不会在任何地方检查错误。请务必更新您的代码以表明您也在这样做。
  • @DougStevenson 你是什么意思?我已经在问题中编写了我的数据库结构...
  • 屏幕截图或 JSON 转储会更准确和更具描述性。请检查错误。
  • @DougStevenson 好的,我添加了我的 Firebase-Database 的图片和一个错误。但是在我执行我的代码之后什么也没发生。
  • 你为错误处理所做的事情是行不通的。该捕获不会发现任何错误。请参阅文档以了解正确的方法。您将传递另一个回调来处理错误。 firebase.google.com/docs/reference/js/… 另见:stackoverflow.com/questions/41625639/…

标签: javascript firebase firebase-realtime-database


【解决方案1】:

您正在侦听child_changed 事件,当/URL/1 属性发生更改时会触发该事件。要在 in /URL/1 的值更改时被调用,请监听 value 事件:

ref.on("value", function(snapshot) {
  var changedPost = snapshot.val();
  alert(changedPost);
});

【讨论】:

    猜你喜欢
    • 2020-07-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-04-13
    • 2019-03-25
    相关资源
    最近更新 更多