当我这样做时:
socket.join('room');
socket.to('room').emit('online');
客户端从未收到过'在线' -event。
当我这样做时:
socket.join('room');
io.to('room').emit('online');
在客户端收到' online' -event。
当我这样做时:
socket.join('room', () => {
socket.to('room').emit('online');
});
客户端从未收到过'在线' -event。
文档陈述如下:
http://socket.io/docs/server-api/#socket#to(room:string):socket
如果我读到这个电话:
socket.to('room').emit('online');
应该被送到房间。
如果我使用电话:
socket.broadcast.to('room').emit('online');
事件应该发送到除插座之外的房间。
现在看起来像是:
socket.to('room').emit('online');
和
io.to('room').emit('online');
是不同的。但是我从我阅读的文档中读到的内容是相同的。
有人可以解释这些差异以及为什么表现不同?