【发布时间】:2016-10-07 21:51:05
【问题描述】:
我正在使用 Meteor/Mongo 创建一个聊天应用程序。
我有以下代码,但我的问题是当我向 MongoDb 添加一行时,observe 被触发两次,而我只希望它触发一次。
addMessage 函数被调用两次。有没有办法防止addMessage 被特定的message 调用多次?
在客户端:
private messages: Mongo.Cursor<Message>;
sendMessage(): void {
this.messages.observe({
added: (message) => this.addMessage(message)
});
this.call('addMessage', this.senderId, this.activeChat._id, this.messageString);
}
在服务器上:
addMessage(senderId: string, chatId: string, content: string): void {
Messages.insert({
chatId: chatId,
senderId: senderId,
content: content,
readByReceiver: false,
createdAt: new Date()
});
},
Here 是有同样问题的人。
【问题讨论】: