迭代firebase数据库中的子值

时间:2018-02-20 19:31:31

标签: javascript firebase firebase-realtime-database

这是我的firebase数据库:

database

我正在尝试使用一个参数创建函数,然后会找到与参数值匹配的啤酒吧;我不知道如何在每个酒吧迭代啤酒。 firebase文档对我来说并不是很清楚。

代码:

var bars = firebase.database().ref("bars").orderByChild("rating");

function barsByBeer(key){
    bars.once("value").then(function(snap){
        snap.forEach(function(childSnapshot){
            *something should go here, but I am not sure what*
        });
    });

1 个答案:

答案 0 :(得分:1)

我认为你需要找出只有一些键相同的条形(假设这些键表示啤酒品牌:)

function barsByBeer(key){
   var selectedBar =[];
   bars.once("value", snap=> {
        snap.forEach(b=>{
            if (b.val().beers[key]) { // Assuming you will provide a beer key
               selectedBar.push(b.val().name);
            }
        });
    });
}

在上面的代码中,您将拥有一个名为selectedBar条的数组列表,其中包含啤酒(用键描述)。希望有所帮助如果它不起作用,请尝试将console.log b项置于forEach循环中进行调整。