我正在使用WebSocket API提供的本机方法。
我想知道是否需要删除事件侦听器,因为link或Websocket的MDN示例code中都没有提到removeEventListener
方法。
我正在使用这样的事件方法:
const ws = new WebSocket(url);
ws.onopen = () => {}
此外,我想知道是否要使用ws.close()
方法关闭连接时是否需要删除事件侦听器,我想它在清理时仍会删除侦听器。
答案 0 :(得分:1)
“在探究了socket.io源之后,当客户端断开连接时,套接字对象(即EventEmitter)将被删除,因此无需手动调用removeAllListener”。
从此处复制:do I have to remove event listener when socket is disconnected?
答案 1 :(得分:0)
您必须手动删除事件侦听器。 事实是,添加的侦听器将在元素上保持活动状态,直到它们被销毁或在现代浏览器中被手动删除。 您可以尝试测试是否在 Web 套接字连接关闭后触发事件。