在firebase中我想访问如下编写的数据库 .
<script>
function fnReadMails(){
var user = firebase.auth().currentUser;
var ref = firebase.database().ref('/posts/'+user.uid);
ref.on("value", function(snapshot) {
var vardata = (snapshot.val());
console.log(vardata);
});
}
</script>
问题是用红色标记的字符串是随机生成的唯一按键 . 每当我得到一个引用时,我能够将ref提升到一个级别,即 userid
,但是我想访问该键中的数据,我不知道它将自动为下一个帖子生成 .
如何访问密钥内的嵌套数据?
2 回答
你想要
child_added
事件类型,这将记录你的ref下的每个孩子的快照 .作为Callam答案的替代方案,您还可以继续使用
value
事件 . 但在这种情况下,您必须使用forEach()
循环遍历消息:两种方法(使用
value
vs使用child_*
)都会产生相同的网络流量 . 但是使用value
通常更容易上手,而使用child_
事件可以更容易地更新需要更新的特定UI元素 .