【问题标题】:Firebase - Retrieving data from pushed itemsFirebase - 从推送的项目中检索数据
【发布时间】:2015-03-20 07:45:31
【问题描述】:

我被困在如何从 firebase 检索推送数据的问题上。我已经设置了身份验证,并且有两个用户推送了一些数据:

{
  "deck" : {
    "-JkpwAnieKjQVsdtPD4m" : {
      "deckName" : "Deck 1",
      "color" : "Red",
      "user" : "simplelogin:1"
    },
    "-Jkq4unexm-qwhO_U2YO" : {
      "deckName" : "Deck 2",
      "color" : "Blue",
      "user" : "simplelogin:1"
    },
    "-Jkq5-II1q5yM6w3ytmG" : {
      "deckName" : "Deck 3",
      "color" : "Green",
      "user" : "simplelogin:6"
    }
  }
}

然后我运行:

deckRef.once('value', function(dataSnapshot) {
  console.log(dataSnapshot.val());
});

返回 3 个 push() 生成的密钥。

Firebase 似乎有一种方法可以检索由“simplelogin:1”(即红色和蓝色)制作的所有颜色条目,但我就是想不通。

【问题讨论】:

    标签: javascript json firebase


    【解决方案1】:

    您可能正在寻找 Firebase 的查询,它允许您:

    deckRef.orderByChild('user').equalTo('simplelogin:1').on(...
    

    不要忘记在您的安全规则中将user 添加到.indexOn

    见:

    【讨论】:

      【解决方案2】:

      这样查询您的数据

      deckRef.orderByKey().once('child_added', function(dataSnapshot) {
            console.log(dataSnapshot.val());
      });
      

      注意:orderByKey()child_added eventType 一起使用

      Reference

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2016-06-23
        • 2016-10-02
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2020-09-14
        相关资源
        最近更新 更多