gpt4 book ai didi

javascript - 一次加入多个房间 Socket.io

转载 作者:行者123 更新时间:2023-12-03 11:51:35 37 4
gpt4 key购买 nike

我有一个应用程序,用户可以在其中获取他们所在的聊天室列表,然后他们可以点击进入他们想要的任何特定聊天室。当前,当用户单击特定房间时,套接字会加入房间,而当用户返回聊天室的主列表时,套接字会离开房间。这意味着当用户在聊天列表页面上时,他们的套接字不在任何房间(连接事件创建的默认房间除外),因此在此页面上不会实时向他们推送新消息。
我计划当用户加载聊天列表页面时,他们会加入所有房间。
我可以看到你可以像这样向多个房间发射:io.to('room1').to('room2').to('room3').emit('some event');有没有办法在socket中同时加入多个房间?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);
文档: https://socket.io/docs/server-api/#socket-join-rooms-callback

关于javascript - 一次加入多个房间 Socket.io,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62795299/

37 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com