我在路由器中使用io.sockets.emit
,如
db.SomeModel.find({},
function(err, modelDate) {
io.sockets.emit('eventName', modelData);
}
);
如果一个套接字花了10秒(只是一个例子)来建立会发生什么,在它建立之前我会尝试发出一些东西。它会给出一些undefined
错误或..?我一般都是节点和异步编程的新手。非常感谢。
答案 0 :(得分:2)
如果套接字建立没有在它之前完成怎么办?
只会跳过它,并且不会将数据发送到尚未建立连接的套接字。
io.sockets.emit()
遍历连接套接字列表并分别发送给每个套接字。如果socket没有连接完成,那么它将不在socket.io迭代的列表中,因此不会向它发送任何数据。