Firebase JS SDK on' child_added'不在大型数据库上工作

时间:2017-03-24 12:26:46

标签: javascript firebase firebase-realtime-database

我的用户中有大约100万用户" table"在Firebase上。

我需要获取每个用户的用户名。

once('value'是一个太大的电话,所以我尝试使用' child_added'但是没有任何成功,我正在使用这段代码:

usersRef.on('child_added', function (snapshot) {
  var user = snapshot.val();
  console.log(user);
  var username = user.username ? user.username : null;
  // Put username in the .txt file, one username per line
});

我等了15分钟,什么也没发生。现在似乎不可能。除child_added之外我还能尝试什么?

1 个答案:

答案 0 :(得分:0)

检索一百万个节点是不可能的。您只是试图通过网络提取过多数据。在这方面,valuechild_added之间没有区别:两者都以相同的方式通过网络检索相同的数据。

通过查询限制查询检索的子项数:

var ref = firebase.database().ref("users");
ref.orderByChild("username").equalTo("Dan P.").on("child_added", ...
直接访问用户节点

var ref = firebase.database().ref("users");
var user = firebase.auth().currentUser;
ref.child(user.uid).on("child_added", ...