import React, { useState, useEffect } from "react"; import { io } from "socket.io-client"; function useInput({ type }) { const [value, setValue] = useState(""); const input = ( setValue(e.target.value)} type={type} /> ); return [value, input]; } function App() { const [ENDPOINT, setEndpoint] = useInput({ type: "text" }); const [connected, setConnected] = useState(false); const [emit, setEmit] = useInput({ type: "text" }); const [emitMsg, setEmitMsg] = useInput({ type: "text" }); const [listenMsg, setListenMsg] = useState(null); const [listen, setListen] = useInput({ type: "text" }); const [socket, setScoket] = useState(""); const [responseListen, setResponseListen] = useState(""); const [responseEmit, setResponseEmit] = useState(""); const handleConnection = () => { // setEndpoint(); setScoket(io(ENDPOINT)) if (socket) { setConnected(true) } else { setConnected(false) } }; const emitMessage = async () => { const msg = await socket.emit(emit,emitMsg) setResponseEmit(msg) } const listenOnMessage = () => { socket.on(listen).then(res => { setResponseListen(res) }).catch(err => { setResponseListen(err) }) } return ( <>
ENTER THE ENDPOINT
{setEndpoint} -> {ENDPOINT}CONNECTED
{ listenMsg}
> ); } export default App;