Meteor/Mongodb可观测集合被调用两次
我正在使用Meteor/Mongo创建聊天应用程序 我有以下代码,但我的问题是当我向MongoDb添加一行时,Meteor/Mongodb可观测集合被调用两次,mongodb,meteor,Mongodb,Meteor,我正在使用Meteor/Mongo创建聊天应用程序 我有以下代码,但我的问题是当我向MongoDb添加一行时,observe会被触发两次,而我只希望它触发一次 addMessage函数被调用两次。有没有办法防止对特定的消息多次调用addMessage 在客户机上: private messages: Mongo.Cursor<Message>; sendMessage(): void { this.messages.observe({ added: (m
observe
会被触发两次,而我只希望它触发一次
addMessage
函数被调用两次。有没有办法防止对特定的消息多次调用addMessage
在客户机上:
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);
}
是具有相同问题的人。观察者会收到两次呼叫,因为您要添加两次记录。Meteor负责更新数据库,您不需要调用服务器方法来执行插入操作。您需要确保以下操作只执行一次。i、 e.辛格尔顿
this.messages.observe({
added: (message) => this.addMessage(message)
});
问题是,观测者的许多实例都在创建中,而且每个实例都在燃烧问题是,Meteor服务器只被调用一次,但可观察对象的行为就像它被添加了两次。我甚至在光标上做了计数
,第一次调用addMessage
时的值与第二次调用时的值相同。
this.messages.observe({
added: (message) => this.addMessage(message)
});