Estoy tratando de modificar WebSockets en JavaScript para intentar volver a conectarme automáticamente al agregarle algunas funciones. Por ejemplo, uso MyWebSocket.sockeRef.onmessage =(e)=>{e.data} en lugar de MyWebSocket.onmessage = (e)=>{e.data} , quiero hacer una nueva clase de WebSockets más dinámica que la compilación en JavaScript.
class MyWebSocket { constructor() { this.socketRef = false; } connect(url) { console.log("this is the url", url); this.socketRef = new WebSocket(url); this.socketRef.onopen = () => { console.log("websocket open"); }; this.socketRef.onerror = (e) => { console.log(e.message); }; this.socketRef.onclose = (e) => { console.log(e.code); console.log("websocket is closed"); console.log(e.wasClean); if (e.code !== 1000 && !e.wasClean) { switch (e.code) { case 1000: console.log("waiting :d"); setTimeout(this.connect(url), 10000); break; default: setTimeout(this.connect(url), 5000); } } }; } send(data) { this.socketRef.send(data); } disconnect() { this.socketRef.close(); } }