我想实现Room
的{{1}}功能,我的配置如下:
io.on('connection', function (socket) {
socket.join('123');
//...
}
当我想发出一个事件时:
socket.in('123').emit('sendMessage', {items:values]});
但除了此邮件的发件人之外,每个人都会收到此邮件。为什么?我是否必须emit()
为发件人发送单独的邮件?
如果我使用socket.to('123')
代替socket.in('123')
,我会得到相同的结果而且没有任何变化。我使用Socket.io
的官方文件:
http://socket.io/docs/rooms-and-namespaces/
答案 0 :(得分:1)
要将此信息发送给包括发件人在内的所有人,您需要使用以下语法:
io.sockets.in('123').emit('message', 'cool game');
请注意,这是使用全局 io,我认为你会包含这样的内容:
var io = require('socket.io');