🔥码云GVP开源项目 12k star Uniapp+ElementUI 功能强大 支持多语言、二开方便! 广告
#### 1、问题描述 每次时间轴交互以后,都需要停掉之前的websocket连接以免展示的查询数据又瞬间被推送回来的新数据更新掉,所以每次点击时间查询按钮时都要调用ws.close()方法关闭websocket推送。然而,close方法并没有生效 #### 2、问题原因 Websocket的close方法要先注册,再使用才能生效 #### 3、解决方案 为创建的websocket对象注册close方法,然后再调用,即可生效 ```javascript var ws = new WebSocket(url); ws.onopen = function() { ws.send(JSON.stringify(param)); } ws.onmessage = callback //注册close事件,否则close方法不会生效 ws.onclose = function() {} ```