Skip to content

Commit d92fee7

Browse files
18 - Handling WebSocket Open & Close Events
1 parent 08027f9 commit d92fee7

File tree

1 file changed

+16
-1
lines changed

1 file changed

+16
-1
lines changed

index.js

Lines changed: 16 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@ import ReactDOM from 'react-dom'
55

66
const MyWebSocket = () => {
77
const [socket, setSocket] = useState(null)
8+
const [isOpen, setIsOpen] = useState(false)
89
// 1. connect to the websocket server
910
// 2. push & listen for messages in the websocket connection
1011
// 3. disconnect from websocket server
@@ -17,9 +18,23 @@ const MyWebSocket = () => {
1718
}
1819
}, [socket])
1920

21+
22+
useEffect(()=>{
23+
// connect to the websocket server
24+
if (socket) {
25+
socket.onopen = () => {
26+
console.log("open")
27+
setIsOpen(true)
28+
}
29+
socket.onclose = () => {
30+
setIsOpen(false)
31+
}
32+
}
33+
}, [socket])
34+
2035
return <div>
2136
<h1>WebSocket</h1>
22-
<p>{socket && socket.readyState === WebSocket.CONNECTING ? "Connecting" : "other"} </p>
37+
<div>{isOpen && <p>Open Socket</p>} </div>
2338
</div>
2439
}
2540

0 commit comments

Comments
 (0)