javascript - React SocketIO 基于数据的动态连接
问题描述
所以,我偶然发现了这个问题,我无法解决这个问题。
我有多个端点,例如:-“/foo1”-“/bar2”-“/faz3”-“/boo4”
我如何能够在反应中自动管理这些连接?
例如:
// File: EndpointManager.js
const [allEndpoints, setAllEndpoints] = useState([]);
const [activeEndpoints, setActiveEndpoints] = useState(["/foo1", "/faz3"]);
useEffect(() => {
// I fetch the endpoints here
return () => setAllEndpoints([]);
}, [])
useEffect(() => {
if (!allEndpoints.length > 0) return;
// Some code here to dynamically manage the socket connections on change, I need your help here
}, [activeEndpoints])
现在,我可以与数组 foreach 动态连接并在该 foreach 中打开一个新连接,但该变量是临时存储的(因为它是一个 foreach)。因此,即使我循环两次,我也无法在循环后访问它。我如何能够基于该阵列管理这些连接?或者另一种可以按照我想要的方式工作的解决方案
我面临的问题是我不知道如何动态存储这些连接。我曾想过创建动态变量,例如socketFoo1
, socketFaz3
,但我不知道如何实现它。请帮帮我!:)
TL;博士
我想完成动态 websocket 连接,它可以基于数组/对象/任何东西进行连接/断开连接
亲切的问候!
解决方案
推荐阅读
- c# - 在c#中获取内容页面静态webmethod中的母版页控件值
- java - Log4J 看起来不像使用 sudo
- python - QTabWidget 插入一个 QSplitter 不能在拆分器禁用时切换
- ksqldb - kafka 流中的 Consumer_failed_message:记录未从主题推送
- css - 如何使用 flexbox 分配不等宽度的项目以填充容器
- sorting - 对 Dart 中不相关的两个列表进行排序
- jquery - 当我使用 jquery 和 selectize.js 从下拉列表中单击全部时,如何选择所有项目?
- rest - 如何检索@RepositoryRestResource 注解生成的嵌套剩余数据资源?
- html - 没有javascript时如何提高最大潜在首次输入延迟?
- mysql - How can I set the options for a MySQL Connector/Python X DevAPI connection?