我的应用程序中有以下代码
this.obsRef.remove(function(error) {
self.firebaseRef.child('users/'+self.user.name+'/invite')
.remove(function(error) {
self.enterLobby();
});
});
代码应该做的是从firebase中删除obsRef然后删除 'users / $ user / invite'上的位置。一旦所有被删除entergirl 被称为。
现在问题在于enterLobby()我得到了以下代码:
this.userListRef.child(this.user.name).child('invite')
.on('child_added', function(snapshot) {
console.log("INVITE");
});
每次都会执行enterLobby()中的代码。 我错过了什么或.remove()的回调不能正常工作? 谢谢
答案 0 :(得分:1)
.on('child_added')
处理程序将确保每次添加子项时都会调用提供的回调。这就是您看到代码多次执行的原因。您可能希望使用.once('value')
代替:
this.userListRef.child(this.user.name).child('invite').
once('value', function(snapshot) { console.log("INVITE"); });