【发布时间】:2023-03-08 13:04:02
【问题描述】:
我正在遍历 firebase 数据库上的两个引用以获取一些数据并在页面上显示它们。我想按他们的名字排序结果,但它不起作用,并继续按照它们在数据库中的顺序返回元素。 这是我的代码:
var ref = firebase.database().ref('/point_of_interest/'+this.poi.chiave+'/tags/')
var ref1 = firebase.database().ref('/tag/');
let tagShow = [];
ref.once('value', function(snapshot){ //ciclo sui tag
snapshot.forEach(function(childSnapshot){
var childKey = childSnapshot.key; //chiave tag
var exists = false;
//ref1.orderByChild("nome").once('value', function(snapshot){
ref1.child("nome").orderByValue().once('value', function(snapshot){
snapshot.forEach(function(childSnapshot){
var childKey1 = childSnapshot.key;
if (childKey == childKey1){ //se ne trovo uno uguale, eisste nella lista dei tag del poi
exists = true;
}
return false;
})
}).then(a => {
if (!exists){
tagShow.push(childSnapshot); //push the list to be displayed
}
})
return false;
})
}).then(a=>{
//do something
})
我用ref.orderByChild("nome") 和ref.child("nome").orderByValue() 都试过了,但结果是一样的。
这就是我的tag 参考的样子:
【问题讨论】:
标签: javascript node.js firebase firebase-realtime-database firebase-storage