javascript - Socket.io 客户端如何知道用户是否连接到通道
问题描述
在 Mysocket 中,我有一个用户可以订阅和取消订阅的可用“房间”列表。用户可以在同一视图中订阅和取消订阅不同的房间。
我试图用这种方法解决这个问题,但问题是套接字正在使用当前事件(“订阅”或“取消订阅”)更新每个房间,而不仅仅是需要的。我有一个处理套接字状态的对象:
const rooms = {
1: { id: 1, isConnected: true },
2: { id: 2, isConnected: true },
3: { id: 3, isConnected: false
}
};
subscribeSocketLive( rooms ){
_.each(rooms , room => {
if(room.isConnected ){
mySocket.emit('subscribe', Number( room.id ) );
}
else if( !room.isConnected ){
mySocket.emit('unsubscribe', Number( room.id ) );
}
});
},
我根据用户的交互在一个单独的文件中处理对象房间。所以我认为这并不重要,但如果您需要更多信息,我可以在这里发布。
解决方案
推荐阅读
- python - 如何将 random.randrange 从可能(10,20)增加到(12,24)
- html - 如何在更新表单的下拉列表中设置所选值
- r - 如何使用 `blavaan` 处理丢失的数据?
- windows - Docker Alpine 镜像,找不到本地网络,连接到 VPN
- qt - 如何将 QT MCU 项目调试到 QTcreator 和 IMXRT1052 评估板?
- c++ - 错误:__WXMSW__||没有这样的文件或目录| 在 Code::Blocks WxWidgets C++ 中构建项目时
- python - 检测链接是否无效的问题
- python - 与 bs4 和 html 混淆
- python - 在单个会话中在 selenium 中运行多个测试
- angular - ngFor 没有正确填充值