【发布时间】:2020-06-21 17:10:15
【问题描述】:
我正在开发一个具有聊天页面的应用程序。 我正在使用 Firebase 实时数据库和我的聊天结构,如下所示:
我收到如下新消息:
fireBuddyChats = firebase.database().ref('/buddychats');
this.fireBuddyChats.child(this.currentUserId)
.child(this.buddy.uid)
.orderByKey()
.limitToLast(topMsgCount)
.on('value', (snapshot) => {
this.buddyMessages = [];
let temp = snapshot.val();
for(var tempKey in temp) {
this.buddyMessages.push(temp[tempKey]);
}
this.events.publish('newmessage');
}
我正在收听“newmessage”事件以在聊天页面中显示新消息。 问题是:当我和某人聊天时,如果另一个朋友发送任何消息,数据库触发器(我上面提到过)运行并且聊天页面显示另一个朋友的消息。我认为它不应该被触发,因为“this.buddy.uid”不同。我错过了什么?有什么建议吗?
【问题讨论】:
标签: javascript firebase firebase-realtime-database