如何使用Node.js使用Firebase正确设置值事件侦听器?如何在Firebase值事件上设置侦听器?
我读通过Firebase's documents,并已成功地能够从我的两个苹果,我的树莓派运行的同时,连接到同一个数据库火力地堡上更新我的火力地堡数据库表和行;但是,我不能明白我需要这个领域做制作一个数据事件的监听器:
var starCountRef = firebase.database().ref('posts/' + postId + '/starCount');
starCountRef.on('value', function(snapshot) {
updateStarCount(postElement, snapshot.val());
});
这是明显,我认为我需要以某种方式需要根据定义postElement
输出:
FIREBASE WARNING: Exception was thrown by user callback. ReferenceError: postElement is not defined
但是,我没有想法是什么postElement
应该是,也不知道怎样去定义它。帮帮我!
我做了一个非常小的程序和表来简单地更新/更改值。我改变了程序,当它改变了一行时,我可以看到控制台输出。
这是我小的用户数据变量,只是让你我想现在该怎么少的数据更改:
var user = {
id:Number,
name:String,
number:Number
};
var users = [user];
这是我改变文档的代码,这样我就可以看到东西而Node.js的控制台输出运行:
var userRef = firebase.database().ref('/users/user' + users[0].id);
userRef.on('value', function(snapshot){
firebase.app.updateUserInfo(postElement, snapshot.val());
console.log('Users' + users[0].name + ' changed.');//<- this is the line I added.
});
注:updateStarCount
功能是从火力地堡文档中的例子,有意义的例子有,我小心翼翼地承担更新本地火力地堡分贝...
注意2:如果updateStarCount
正在做一些其他的魔术,那么它是Firebase的文档缺陷,因为函数没有在那里定义。任何帮助澄清本文档将不胜感激。
此'updateStarCount'函数来自哪里?这绝对不是来自Firebase。 – vzsg
@vzsg如果您检查[Firebase页面]的链接(https://firebase.google.com/docs/database/web/read-and-write)并搜索'updateStarCount',您可以在链接页面。 – NonCreature0714
啊,我明白了。我应该将其表述为“不是来自Firebase SDK”。这只是示例代码,并不比伪代码更具体。这里的想法假设你有一个函数用结果更新HTML元素 - 你必须用真实应用程序中的自己的逻辑来替换它。 – vzsg