无法使用orderByChild和equalTo从Firebase查询

时间:2018-12-12 04:32:37

标签: javascript firebase firebase-realtime-database

enter image description here

导出的json数据:

[ null, {
  "branch" : 6725,
  "id" : 1234,
  "lat" : 17.1234,
  "lng" : 78.345,
  "name" : "test",
  "time" : "2018-12-11 18:12:40"
}, {
  "branch" : 6724,
  "id" : 12345,
  "lat" : 17.234,
  "lng" : 78.23457,
  "name" : "suchit",
  "time" : "2018-12-12 09:34:22"
} ]

不知道null在这里做什么。

无法使用equalTo从上述结构中查询: 当前代码:

var branch=6725;
var cars_Ref = firebase.database().ref().child('liveusers');  
var cars =cars_Ref.orderByChild("branch").equalTo(branch);
                 cars.on('child_added',function(snapshot) {
                         var obj = snapshot.val();
                         console.log(obj.name + " is available.");
                 });

注意:也可以使用其他任何方法。

1 个答案:

答案 0 :(得分:0)

尝试一下:

var branch = 6725;
var  ref   = firebase.database().ref("liveusers");

ref.orderByChild("branch").equalTo(branch).on("value", function(snapshot) {
 snapshot.forEach(function(childSnapshot) {
      var childData = childSnapshot.val().;
        console.log(childData.name);
     });
 });

这里您将引用放在liveusers上,然后在快照中循环并检索应满足查询的名称。