Firebase .value观察者如果ref不存在则不监听,但后来存在

时间:2017-05-15 09:25:18

标签: swift firebase firebase-realtime-database

假设用户有一个节点,其中存储了所有受欢迎帖子的ID(/ users / $ uid / favorites / $ postid)。所以,在我的ViewController中,我观察/ users / $ uid / favorites / node,这样我就可以得到所有喜欢的postid,然后迭代地获取post对象。

如果用户没有收藏夹,则“收藏夹”节点尚不存在。我发现如果我在这种状态下附加一个.value事件观察者,它就会在用户以后收藏一个帖子时(即当'favorites'ref存在时)来触发。如果我​​使用.childAdded观察者,这个问题就不会发生

这是一个错误还是一个特定的设计功能?还有,有一种解决方法......当然,不要求我使用.childAdded观察者。感谢。

1 个答案:

答案 0 :(得分:0)

它应该如你所描述的那样工作。确保在testRef侦听器而不是.value侦听器中添加.observe()事件侦听器时。