0

我正在.push()研究 Firebase 参考。

我希望听众能够上网,然后只收到新.push()教育儿童的通知。

因此,如果节点已经包含 5 个子节点并且客户端来并希望收到新子节点的通知,并且推送了 2 个,那么客户端应该只收到 2 个通知。

现在,.on('child_added',function...)当上线时,客户端不仅会收到新消息,还会收到所有旧消息。这是我要避免的第二部分。

我也尝试过使用.startAt().limit(1)...,但这似乎也没有达到预期的效果。我不确定它到底在做什么,但肯定不是我所期望的。

4

1 回答 1

1

startAt() 返回最旧(第一个)记录,其中 endAt() 返回最后一个(最新)记录,假设您已使用 push() 来存储它们。

所以这会给你最新的条目:

 ref.endAt().limit(1)

请记住,您收到的第一条记录将是先前存在的,因此在只有用户上线后添加的数据才有价值的用例中应该丢弃它。

于 2013-10-01T14:25:51.650 回答