ws-server.js (์น ์์ผ ์๋ฒ์ธก)
const WebSocketServer = require('ws').Server;
const wss = new WebSocketServer({ port: 8080 });
wss.on('connection', function connection(ws) {
ws.on('message', function message(data) {
console.log('received: %s', data);
});
ws.send('something');
});
index.js (๋ฆฌ์กํธ)
import React, { useState ,useEffect, useRef} from 'react';
const [socketConnted, setSocketConnected] = useState(false);
const ws = useRef(null);
useEffect( ()=>{
ws.current = new WebSocket('ws://localhost:8080/ws'); // ์น ์์ผ ์ฐ๊ฒฐ
ws.current.onopen = ()=>{
console.log('์น ์์ผ ์ฐ๊ฒฐ ์ฑ๊ณต!');
setSocketConnected(true);
}
ws.current.onclose = (error)=>{
console.log('์น ์์ผ ์ฐ๊ฒฐ ์ข
๋ฃ.');
console.log('error: ' + error);
}
ws.current.onerror = (error)=>{
console.log('์น ์์ผ ์๋ฌ ๋ฐ์.')
console.log('error: ' + error);
}
ws.current.onmessage = (msg)=>{
console.log('์๋ ๋ฉ์์ง: ' +msg.data );
setTranslate( msg.data );
}
return () =>{
ws.current.close();
}
}, []);
// ๋ค๋ฅธ useEffect์์ ws ์ฌ์ฉ
useEffect( ()=>{
if(socketConnted)
ws.current.send(finalTranscript);
}, [object] )
์ฐธ๊ณ
https://sunnykim91.tistory.com/139
์ธ์ ์ฌ์ด React๋ก WebSocketํต์ ํด๋ณด๊ธฐ server,client ๋ค ์์!(with TypeScript)
๋จผ์ , WebSocket์ ๋ํด์ ์์๋ณด๊ฒ ๋ค. (React+Typescript ๊ธฐ๋ฐ์ด๋ค.) WebSocket์ ์๋ฐฉํฅ ํต์ ์ด ๊ฐ์ ์ธ ๊ธฐ์ ์ด๋ค. ํํ ์ฑํ ์ ์์ ๋ก ๋ง์ด๋ค ๋ ๋ค. ๊ฑฐ๋์ ๋ฏธํ๊ณ , ์ผ๋จ ์๋ฐฉํฅ ํต์ ์ด๋ผ ํ์ผ๋, Client์ S
sunnykim91.tistory.com
react ์ปดํฌ๋ํธ์ websocket ์ ์ฉํ๊ธฐ
์ฝ๋ ver 0.2 import React, { useEffect, useState, useRef } from "react"; const SocketTest = () => { const [socketConnected, setSocketConnected] = useState(false); const [sendMsg, setSendMsg] = useState(false); const [items, setItems] = useState([]); cons
jcon.tistory.com
[์น์์ผ ์ธ์คํด์ค์ scope ๋ฌธ์ - useEffect hook ์์์ ์ ์๊ฐ ๋๊ธฐ ๋๋ฌธ์ ๋ค๋ฅธ ํจ์์์ ์น์์ผ ์ธ์คํด์ค๋ฅผ ์ฌ์ฉํ ์ ์๊ฒ ๋๋ค. ์ด๋ฅผ ํด๊ฒฐํ๋ ๋ฐฉ์์ผ๋ก useRef hook์ ์ฌ์ฉ]
[react native]์น์์ผ ์ ์ฉํ๊ธฐ
๋ฆฌ์กํธ ๋ค์ดํฐ๋ธ์์ ์น์์ผ ํต์ ์ ์ฌ์ฉํ๊ธฐ ์ํด์ WebSocket์ ์ฌ์ฉํ๋ผ๊ณ ๊ถ์ฅํ๋ค. ํ์ด์ค๋ถ ๊ณต์๋ฌธ์ - \[https://reactnative.dev/docs/networkํ์ฌ ํจ์ํ ์ปดํฌ๋ํธ๋ฅผ ์ฌ์ฉํ๊ณ ์๋๋ฐ, ์ฒ์์ ์ปดํฌ
velog.io
[useRef ์ฌ์ฉ๋ฒ ๋ฐ ์์ ]
[React] useRef ์ฌ์ฉ๋ฒ ๋ฐ ์์
[useRef] useRef๋ ์ ์ฅ๊ณต๊ฐ(๋ณ์ ๊ด๋ฆฌ), DOM ์์์ ์ ๊ทผ์ ์ํด ์ฌ์ฉ์ด ๋๋ React hooks์ ๋๋ค. Ref๋ 'reference'์ ์ฝ์๋ก, '์ฐธ์กฐ'๋ผ๋ ๋ป์ ๋๋ค. DOM ์์๋ฅผ ์ฐธ์กฐํด์ ์ด๋ ๊ฒ ์ง์์๊น์? 1. ์ ์ฅ๊ณต๊ฐ(๋ณ์
itprogramming119.tistory.com
'๐ฅ๏ธํ๋ก ํธ์๋ > React.js' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
๋ฆฌ์กํธ - ์ฐํด๋ฆญ ๋ฉ๋ด ๊ตฌํํ๊ธฐ(context menu) (0) | 2023.10.13 |
---|---|
๋ฆฌ์กํธ - ์์ฑ ๋๋๊ณ ๋์ ํ ์คํธ ์๋ก ๊ธฐ๋กํ๊ธฐ(react-speech-recognition) (0) | 2022.11.06 |
๋ฆฌ์กํธ - ์์ฑ์ ํ ์คํธ๋ก(react-speech-recognition) (0) | 2022.11.04 |
๋ฆฌ์กํธ - UI ํ๋ ์์ํฌ(MUI) (0) | 2022.10.15 |
๋ฆฌ์กํธ - ํ ์คํธ ํ์ (React-Toastify) ๋ชจ๋ (0) | 2022.10.15 |