从 Firebase 数据库快照中获取元素的密钥



我有下一个关于Firebase数据库的查询

firebase.database().ref('users/'+userId+ubication)
.orderByChild('timestamp')
.equalTo(parseInt(timeStamp))
.once('value')
.then(snapshot=>{
console.log(snapshot);
}
);

此查询返回我只有一个元素,我需要从数据库中删除此元素,但我不知道如何获取它的密钥!

作为一般做法,当您获取具有子项的快照时,可以使用forEach循环访问它们。在此之后,您可以使用.key从子元素获取密钥。无论查询返回多少个子元素,都可以执行此操作。

你可以做这样的事情:-

firebase.database().ref('users/'+userId+ubication)
.orderByChild('timestamp')
.equalTo(parseInt(timeStamp))
.once('value')
.then(snapshot=>{
console.log(snapshot);
var arrayOfKeys = []
snapshot.forEach(function(child_element){
arrayOfKeys.push(child_element.key)
})
}
);

要删除子元素,您现在可以使用键引用路径。此外,我强烈建议您彻底了解Promises调用和异步调用,因为在处理 node.js 中的数据列表时,它们非常重要!

最新更新