0
我有一个拥有多个用户的Firebase数据库,并且我想为每个用户注册一个单独的侦听器。这是因为整个数据库上的监听器都是多余的,因为每次更改每个用户的数据时,所有用户的数据都将在回调中返回。如何注册多个Firebase参考的侦听器
假设用户编号为0 - 25
。我有以下代码:
var admin = require("firebase-admin");
var serviceAccount = require("serviceAccountCredentials.json");
var config = {
credential: admin.credential.cert(serviceAccount),
databaseURL: "https://test.firebaseio.com"
};
var app = admin.initializeApp(config);
var db = admin.database();
var company = db.ref('companies');
for(var i = 0; i < 26; i++){
company_ref = company.child(i);
company_ref.on("child_added", function(snapshot){
console.log("child_added for " + i);
console.log(snapshot.val());
});
company_ref.on("child_changed", function(snapshot){
console.log("child_changed for " + i);
console.log(snapshot.val());
});
company_ref.on("child_removed", function(snapshot){
console.log("child_removed for " + i);
console.log(snapshot.val());
});
}
但是,此代码只注册用户25
监听器,并且似乎对其他用户的听众都得到垃圾收集。什么是正确的方法来做到这一点;我必须使用多个线程吗?
谢谢,这工作! – Alex