使用 Firebase 将多个元素作为快照进行查询

Query multiple elements as snapshot with Firebase

本文关键字:快照 查询 元素 Firebase 使用      更新时间:2023-09-26

我想在单个查询中检索表示查询时状态的多个元素,以便我可以处理它们。

所以我先尝试了一次()

 ref.orderByChild("id").startAt(100).once("child_added", function(snapshot))

但这只返回了第一个条目。如果使用 on() 而不是 once(),我会得到所有结果,但是我如何检测所有初始结果都已发送到 calloff() 以开始处理我的结果?

我也想过使用 once("value"),但随后我将收到所有元素,并且必须在客户端进行过滤,因此该解决方案不会真正扩展。

那么你会提出什么建议?

您可以使用value侦听器获取与查询匹配的所有元素:

var query = ref.orderByChild("id").startAt(100);
query.once("value", function(snapshot) {
  snapshot.forEach(function(childSnapshot) {
    console.log(childSnapshot.key(), childSnapshot.val());
  });
})