import MyEvent from "@/tool/myEvents"; class MyWs { constructor() { this.ws = null; // this.ws = new WebSocket(); let http = process.env.VUE_APP_BASE_URL.replace(/^https?:\/\//, '') this.messageUrl = http+'/notification' } linkWs(url) { if (this.ws && this.ws.readyState == 1) return this.ws = new WebSocket(url) this.ws.onmessage = (e)=>{ try { MyWs.receiveText(JSON.parse(e.data)) } catch (error) { console.error('websocket',error) } } } static receiveText(data,call){ MyEvent.emit('getMessage',data) } sendMessage(data) { if (this.ws && this.ws.readyState == 1) { let obj = { cmd: 1, data: { name: '123', } } this.send(obj) obj = { cmd: 4, data: { msg: data, } } this.send(obj) // obj = { // cmd: 6, // data: { // msg: data, // } // } // this.send(obj,this.ws) } } send(obj) { this.ws.send(JSON.stringify(obj)) } close(){ if (this.ws && this.ws.readyState == 1) { this.ws.close() } } } export default new MyWs()