【问题标题】:Query multiple elements as snapshot with Firebase使用 Firebase 查询多个元素作为快照
【发布时间】:2016-04-28 00:35:01
【问题描述】:

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

所以我先尝试了一次()先

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

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

我也考虑过使用 once("value") 但我会收到所有元素并且必须在客户端进行过滤,所以这个解决方案不会真正扩展。

那你有什么建议?

【问题讨论】:

  • 下面的快速第一个答案。您可能正在寻找更多,但很难从您的描述中看出这一点。如果您编辑您的问题以包含重现问题的最小完整代码,这将非常有帮助。

标签: javascript firebase firebase-realtime-database


【解决方案1】:

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

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

【讨论】:

  • 感谢您的及时回答,如果我的示例解释性不够,我们深表歉意 - 这正是我想要的。如前所述,我也在试验价值监听器,但不知何故无法让它工作!
猜你喜欢
  • 2017-12-29
  • 2018-04-27
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-11-26
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多