出于某种原因,推送到mongodb可以使用此设置
// Fixed params
story.title = 'Socketi';
story.lines.push ({ author: 'Khuram', text:'socket data'});
//Capture data from socket into schema
io.sockets.on('connection', function (socket) {
socket.emit('news', { hello: 'world' });
socket.on('slog', function (data) {
console.log(data);
});
});
但是在socket.io调用中放置mongoose push语句不起作用
像这样:
// Fixed params
story.title = 'Socketi';
//Capture data from socket into schema
io.sockets.on('connection', function (socket) {
socket.emit('news', { hello: 'world' });
socket.on('slog', function (data) {
story.lines.push ({ author: 'Khuram', text:data.my});
});
});
仅供参考:'slog'是指我希望mongoose更新的事件。 我从客户端接收数据,我想在每次发出此事件时将套接字事件数据推送到mongodb(这就是我想将它放在socket.io调用中的原因)
答案 0 :(得分:1)
您的保存功能在哪里执行?当你在回调中收到一条slog消息,然后在你的回调中调用另一个故事实例时,我建议把所有的逻辑放在你想要发生的事情上。