Firebase检索数据不起作用

时间:2018-08-29 03:53:48

标签: javascript firebase google-cloud-firestore

我想在Firebase的Rails应用程序中建立一个私人聊天室。 但是现在我感到困惑的是,以下代码为什么不起作用。我是Firebase的新手,所以我基本上不知道如何解决这些错误。

首先,我想从我的Firebase数据库中检索数据。如您所见,我已经在firebase中创建了两个记录。

enter image description here

这是我的代码,我希望它是纯JavaScript而不是node.js

<script src="https://www.gstatic.com/firebasejs/5.4.1/firebase.js"></script>
<script src="https://www.gstatic.com/firebasejs/5.4.1/firebase-app.js"></script>
<script src="https://www.gstatic.com/firebasejs/5.4.1/firebase-auth.js"></script>
<script src="https://www.gstatic.com/firebasejs/5.4.1/firebase-database.js"></script>
<script src="https://www.gstatic.com/firebasejs/5.4.1/firebase-firestore.js"></script>
<script src="https://www.gstatic.com/firebasejs/5.4.1/firebase-messaging.js"></script>
<script src="https://www.gstatic.com/firebasejs/5.4.1/firebase-functions.js"></script>

<script>
  // Initialize Firebase
  $(function() {
    var config = {
      apiKey: "MyKey",
      authDomain: "MyDomain",
      databaseURL: "https://example.com",
      projectId: "MyProjectId",
      storageBucket: "MystorageBucket",
      messagingSenderId: "592744784916"
    };

    firebase.initializeApp(config);
    loadMessages();

    function loadMessages() {
      // Loads the last 12 messages and listen for new ones.
      var callback = function(snap) {
        var data = snap.val();
        console.log(data);
      };
      firebase.database().ref('/messages/').limitToLast(12).on('child_added', callback);
      firebase.database().ref('/messages/').limitToLast(12).on('child_changed', callback);
    }
  });
</script>

但是,当我打开开发人员控制台时,控制台中没有看到任何消息。

或者有更好的解决方案,将Rails与Firebase相结合也将是一个很好的答案。

1 个答案:

答案 0 :(得分:0)

您在屏幕快照中显示的数据库是Cloud Firestore。您在代码中访问的数据库是实时数据库。两者都是Firebase的一部分,但它们是完全独立的数据库,每个数据库都有自己的API。

要从您的代码访问Cloud Firestore,请在此处阅读其文档:https://firebase.google.com/docs/firestore/