我在firebase中有这样的数据结构
posts: {
post1-uid: {
likedCount: 10
... other properties ...
}
post2-uid: {
likedCount: 2
... other properties ...
}
}
每当值更改时,我想自动为javascript中的任何给定帖子(例如post1)再次自动获取
likedCount
。我尝试使用
var likedCount;
post1Ref.on("child_change", snapshot => {
likedCount = snapshopt.val();
});
但是,当更新
other properties
中的post1
时,也会触发侦听器。我需要添加if else
条件吗?看来我走错了路..实现目标的优雅方法是什么?
最佳答案
如果您希望侦听器仅读取很小的数据,则只需以不同的方式构造数据,然后将引用指向LikedCount的新父级即可。
posts: {
post1-uid: {
metrics: {
likedCount: 10
},
... other properties ...
}
}