如何停止侦听websocket中的所有事件。
const WebSocketClient = require('ws');
const ws = new WebSocketClient('wss://example.com');
ws.on('message', doFunction());
function doFunction() {
if (condition) {
//do some stuff
//stop listening to event without closing the websocket connection
}
}
ws.close((或ws.terminate((将关闭连接,我不想关闭连接。
您必须手动删除事件侦听器。它们在图元上保持活动状态,直到它们被销毁(或被浏览器删除(。
由于您的WebSocketClient
扩展了EventEmitter
,因此您肯定可以调用ws.removeAllListeners()
。
EventEmitter.removeAllListeners文档和ws#WebSocket文档应该会有所帮助。