【发布时间】:2018-07-07 13:07:14
【问题描述】:
我正在努力从 firebase 检索数据。基本上我正在创建一个约会应用程序,当用户“喜欢”某人时,它应该检查显示的用户喜欢的人数组,以查看当前用户是否在那里,然后如果他们是则“匹配”他们
我有这个功能:
pullFromFirebase = (displayedUser) => {
return new Promise((resolve, reject) => {
firebase.database().ref('users/' + displayedUser.id + '/usersLiked/').once('value').then(function(snapshot) {
const users = Object.keys(snapshot.val()).map(function(key) {
return snapshot.val()[key];
})
});
})
}
这个功能是有效的,因为当我 console.log(users) 时,我得到了被喜欢的人的数组。但是,当我这样调用这个函数时
async checkForMatch (currentUser, displayedUser) {
const likedUsers = await this.pullFromFirebase(displayedUser);
console.log(likedUsers, 'likedUsers');
}
控制台中没有记录任何内容?当我拿走异步的东西时,console.log 只是说它正在等待处理。我做错了什么或者为什么我不能在我的checkformatch 函数中显示用户?
【问题讨论】:
标签: javascript reactjs firebase asynchronous firebase-realtime-database