【发布时间】:2018-09-08 03:48:33
【问题描述】:
我想使用async/await 获取指定记录的子项的密钥,但它似乎不起作用,我不断收到未处理的承诺拒绝。我正在尝试遍历快照并获取每个孩子的密钥并将它们存储在一个数组中
这是我尝试过的:
await firebase.database().ref('User-Message/' + this.state.user.id).once('value', async (snapshot) => {
await snapshot.forEach(user => {
this.list.push(user.key)
})
return key;
})
我也试过这种方式:
let db = await firebase.database().ref('User-Message').child(this.state.user.id);
let response = await db.once('value');
let users = await response.forEach(user => {
console.log(user.key);
return user.key;
})
如何使用async/await 获取键数组?
这是我不断收到的错误
Possible Unhandled Rejection (id: 0): TypeError: undefined is not a function (evaluating '_this.list.push()')
【问题讨论】:
-
awaiting aforEach没有任何意义,因为forEach返回undefined,这不是Promise。i keep getting unhandled promise rejection究竟是什么错误? -
我尝试从 foreach 中删除 await .. 仍然是
unhandled promise rejection的相同日志 .. -
是的,那到底是什么错误?在不知道错误是什么的情况下,很难修复它
-
稍等,我将编辑问题并添加错误
-
检查问题中的错误
标签: javascript reactjs firebase react-native firebase-realtime-database