Javascript 一次连接多个房间Socket.io
我有一个应用程序,用户可以获得他们所在聊天室的列表,然后他们可以点击进入任何他们想要的特定聊天室。当前,当用户单击某个特定的聊天室时,套接字加入聊天室,当用户返回聊天室的主列表时,套接字离开聊天室。这意味着当用户在聊天列表页面上时,他们的套接字不在任何聊天室(连接事件创建的默认聊天室除外),因此当用户在该页面上时,不会实时向他们推送新消息 我计划,当用户加载聊天列表页面时,他们会在该点加入所有聊天室 我可以看到您可以像这样向多个房间发射:Javascript 一次连接多个房间Socket.io,javascript,node.js,sockets,socket.io,Javascript,Node.js,Sockets,Socket.io,我有一个应用程序,用户可以获得他们所在聊天室的列表,然后他们可以点击进入任何他们想要的特定聊天室。当前,当用户单击某个特定的聊天室时,套接字加入聊天室,当用户返回聊天室的主列表时,套接字离开聊天室。这意味着当用户在聊天列表页面上时,他们的套接字不在任何聊天室(连接事件创建的默认聊天室除外),因此当用户在该页面上时,不会实时向他们推送新消息 我计划,当用户加载聊天列表页面时,他们会在该点加入所有聊天室 我可以看到您可以像这样向多个房间发射: io.to('room1')。to('room2')。t
io.to('room1')。to('room2')。to('room3')。emit('some event')代码>
有没有办法在套接字中同时连接多个房间
socket.join('room1')。join('room2')。join('room3')
?
或
socket.join('room1','room2','room3')
还是我最好做一些事情,比如:
rooms = ['room1', 'room2', 'room3'];
rooms.forEach(room => {
socket.join(room)
});
是的,只需将数组放入join函数:
rooms = ['room1', 'room2', 'room3'];
socket.join(rooms);
文件: