[TIL/React] 2023/05/05
1. 프로젝트 생성, 설치 리액트 프로젝트에서 의존 패키지를 설치하면, 항상 package.json에서 잘 설치되었는지 확인해주는 작업을 해야함! 2. reducer 생성, st
1. 프로젝트 생성, 설치




리액트 프로젝트에서 의존 패키지를 설치하면, 항상 package.json에서 잘 설치되었는지 확인해주는 작업을 해야함!
2. reducer 생성, store 연결



redux를 통해 상태를 관리할 것이기에, 기초적인 연결 작업을 수행함.
3. InputSection 컴포넌트 & 필요한 Action 생성

<3-1>. InputSection 컴포넌트 내부에는 useState를 사용하여 inputValue에 대한 상태 변수를 선언 <3-2>. inputValue는 객체 형태의 data,

InputSection 컴포넌트를 최상위 파일인 App.js에서 렌더링
다만, 'inputArray 배열의 요소(=문자열 값)'와 'inputValue 객체의 key 이름(고유명사로서의 이름)'이 일치할 필요가 있음. '이름(고유명사로서의 이름)'이 다를 경우, name을 변수로서 인식하지 않음. name이라는 속성이 추가되고 해당 값이 업데이트되는, 예기치 않은 동작을 일으킬 수 있음!!!

InputSection 컴포넌트에서 할 일이 추가되는 action이 필요했다.
<3-1>. 'ADD_TODO'라는 상수를 정의하고, 'addTodo'라는 액션 생성 함수를 만든다. <3-2>. 'addTodo' 함수는 'todo'라는 인자를 받아 액션 객체를 반환한다. 해당 액션 객체는 'ADD_TODO' 타입과 함께 'todo' 데이터를 담고 있다. <3-3>. initialState를 정의한다. initialState는 객체로서, todo라는 key와 빈 배열 형태의 value로 구성된 하나의 프로퍼티이다. <3-4>. reducer에서는 ADD_TODO의 case일 때 다음과 같이 반환한다. <3-5>. 초기값의 형태를 기본적으로 유지한다.{...state, todo:[~~]}라는 것은 달리 보면 {todo:[], todo:[~~]}와 동일하다. 즉 이전 상태를 복사하며 todo를 새롭게 업데이트 하겠다는 뜻이다. <3-6>. todo:[~~]의 ~~중 ``...state?.todo``는 빈 배열을 풀어놓았기에 아무것도 없는 상태이다. 그렇다면 배열 안에 action?.todo만 남게 된다. 그렇다면 todo라는 것은 객체 형태의 데이터여야 한다.

<3-1>. useDispatch는 Redux 스토어의 dispatch 메소드를 가져오는 역할을 한다. 이를 통해 리덕스 액션을 발생시킨다. <3-2>. useSelector는 Redux 스토어의 상태(state)를 가져오는 역할을 한다. 이를 통해 리덕스 스토어에 저장된 데이터를 가져와서 사용할 수 있다. <3-3>. Add 버튼에 onClick 속성이 있다. 해당 속성에서 handleAddClick 함수를 실행시킨다. <3-4>. handleAddClick 함수는 dispatch를 통해 addTodo라는 액션 생성 함수를 실행시킨다. 이때 id 속성이 추가된 형태의 inputValue 데이터를 전송한다.

이 부분과 연결되는 것이다.
<3-5>. 마지막으로 setInputValue 함수를 통해 inputValue를 초기화한다.

More to read
프론트엔드와 백엔드 사이
HTTP 상태 코드는 프론트엔드에서 백엔드로 보냈던 요청의 수행 결과를 의미하는 일종의 약속이며, API를 구성하는 핵심 요소 중 하나입니다. 상태 코드와 관련하여, 백엔드는 잘 모르는 프론트엔드의 슬픈 사정이 있습니다.아래는 요청이 실패했음에도, 백엔드에서 상태 코드
JWT토큰 관리 방식 톺아보기
0. 들어가며 🎯 서비스에 접근하려는 사용자가 누구인지 확인하는 과정을 사용자 인증이라고 합니다. 인증된 사용자에게 주어진 권한을 확인하는 작업은 인가라고 부릅니다. 이번 글에서는 인가는 다루지 않습니다. 사용자 인증에는 많은 방식이 있지만, 오늘은 세션 인증 방
A2AA2A / MCP 멀티 에이전트 오케스트레이션
0. 들어가며 ✍️ Google for Developers에, 레스토랑 공급망 시나리오로 엮은 6대 프로토콜(MCP, A2A, UCP, AP2, A2UI, AG-UI)에 대한 가이드가 게시된 이후, MCP와 A2A부터 구현해 보는 것이 좋을 것 같다는 생각이 들었습니