Firebase - 从推送的项目中检索数据

时间:2015-03-20 07:45:31

标签: javascript json firebase

我遇到了如何从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());
});

返回由push()生成的键推送的3。

似乎有一种方法可以让firebase检索由" simplelogin:1"生成的所有颜色条目。 (所以红色和蓝色),但我无法弄清楚。

2 个答案:

答案 0 :(得分:1)

您可能正在寻找Firebase的查询,您可以:

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

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

请参阅:

答案 1 :(得分:0)

像这样查询您的数据

elapsedTime

注意:deckRef.orderByKey().once('child_added', function(dataSnapshot) { console.log(dataSnapshot.val()); }); 适用于orderByKey() eventType

Reference