socket.io는 서버와 클라이언트 간에 양방향 통신을 가능하게 해주는 모듈이다클라이언트 소켓의 연결 요청을 대기하고, 연결 요청이 오면 클라이언트 소켓을 생성하여 통신이 가능하게 한다.socket()함수를 이용하여 소켓을 생성bind() 함수로 ip와 port번호를
registerinput에서 값을 불러오기 위한 함수로, 다른 옵션을 이용하면 input의 유효성 검사도 쉽게 할 수 있다.<input {...register('사용하고 싶은 이름')}/>로 사용하고 사용하고 싶은 변수로 값을 불러올 수 있다. onChange등의
서버 상태를 불러오고, \*캐싱하며, 지속적으로 동기화하고 업데이트하는 작업을 도와주는 라이브러리리액트 컴포넌트 내부에서 간단하고 직관적으로 api를 사용할 수 있다캐싱을 통해 동일한 데이터에 대한 반복적인 비동기 데이터 호출을 방지하고, 불필요한 api콜을 줄여 서버
서버로부터 데이터를 조회해올 때 사용 \- useQuery마다 부여되는 고유 key값 \- 문자열로 사용될 수도 있고, 배열의 형태로도 사용될 수 있음배열에 입력되는 순서 보장캐싱을 관리할 수 있도록 도와준다pueryKey 예시 설명1: 아래 코드에서는 res1에
상태관리 라이브러리부모트리에 <RecoilRoot></RecoilRoot>로 감싸준다업데이트와 구독이 가능, 공유상태, 상태의 단위고유한 키가 필요함(중복 안됨)어떤 컴포넌트에서나 읽고 쓸 수 있다atom의 값을 읽는 컴포넌트들은 암묵적으로 atom을 구독한
상태를 관리하게 될 때 useState 를 사용하는것 말고도 다른 방법이 있다. 이 Hook 함수를 사용하면 컴포넌트의 상태 업데이트 로직을 컴포넌트에서 분리시킬 수 있다. 상태 업데이트 로직을 컴포넌트 바깥에 작성 할 수도 있고, 심지어 다른 파일에 작성 후 불러와서