以下代码使我能够返回当前用户的所有表达式。 在此示例中,控制台中显示以下表达式:
但我不确定如何列出当前用户的表达式下的所有标题。 期望的结果应该是: KIKKER、CPM2MAN
function f_returnUserDetails(a){
var key;
var childData;
return new Promise(function(resolve, reject) { //return promise
firebase.database().ref('/users/').orderByChild("uid").equalTo(a).on('value', function (snapshot) {
snapshot.forEach(function(childSnapshot) {
key = childSnapshot.key;
childData = childSnapshot.val();
resolve([childData, childSnapshot.key]);
});
});
});
};
firebase.auth().onAuthStateChanged(function(user){
var user = firebase.auth().currentUser;
var uid = user.uid;
f_returnUserDetails(uid).then((dbItems) => {
console.log(dbItems[0].Expressions);
});
});
最佳答案
通过执行以下操作,您应该获得请求的值:
firebase.database().ref('/users/').orderByChild("uid").equalTo(a).on('value', function (snapshot) {
snapshot.forEach(function (childSnapshot) {
key = childSnapshot.key;
childData = childSnapshot.val();
for (v of Object.values(childData.Expressions)) {
if (v.hasOwnProperty('title')) {
console.log(v.title);
}
}
});
});
关于javascript - 当 firebase 中不知道 key 时,如何获取 child 的 child ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53669316/