如何在Firebase中获取元素/列表的大小而不是全部?

Rod*_*hos 21 javascript firebase firebase-realtime-database

我需要在Firebase中测量元素或列表的大小/长度,但我不需要真正的内容.

就像是 firebase.database().ref("users/").once("length" || "size").then(callback)

ps Javascript SDK

Fra*_*len 59

Firebase没有计数运算符,因此唯一的方法是下载所有子项保持单独的<children>_count属性同步.后者不是一项微不足道的任务(请参阅我的答案,这里有一种方法),因此大多数情况下开发人员可能最终会采用下载太多 - 数据但很简单的方法:

ref.child("messages").on("value", function(snapshot) {
  console.log("There are "+snapshot.numChildren()+" messages");
})
Run Code Online (Sandbox Code Playgroud)

计算子项的一种更有效的方法是使用shallow=true参数激活REST调用,这将为您提供密钥.请参阅在Firebase中,有没有一种方法可以在不加载所有节点数据的情况下获取节点的子节点数?