Maa*_*man 3 mongoose node.js socket.io
我的目标是将猫鼬的结果(聊天记录)传递给我的socket.emit。
使用下面的代码,可以获得所需的数据库结果。
// Find all chats.
var Chats = require('./models/chats');
Chats.find(function(err, chat_data) {
if (err) return console.error(err);
console.dir(chat_data);
});
Run Code Online (Sandbox Code Playgroud)
在此代码下,我有我的套接字连接,其工作方式如下
// set socket on chat
io.sockets.on('connection', function (socket) {
// emit existing chats from the db
socket.emit('chat_history', { chat_history: 'this arrives' });
Run Code Online (Sandbox Code Playgroud)
现在的问题是:我不知道如何将猫鼬的结果传递给socket.emit。无论我做什么,猫鼬都是在socket.emit之后执行的,所以我在控制台中未定义。
我该如何正确执行此操作?
意见非常感谢。
emit数据存在时调用:
Chats.find(function(err, chat_data) {
socket.emit('chat_history', { chat_history: chat_data });
});
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3677 次 |
| 最近记录: |