Front-end/React.js(Next.js)

Context API, useReducer

prden 2022. 11. 5. 09:07

"Reducer를 통해 상태 값 업데이트 && context를 통해 가져오기"

 

1. Context API

리액트의 Context API 를 사용하면, 프로젝트 안에서 전역적으로 사용 할 수 있는 값을 관리 할 수 있다.
이 값은 함수일수도 있고, 어떤 외부 라이브러리 인스턴스일수도 있고 심지어 DOM 일 수도 있다.

2. context 만든는 법

createContext의 파라미터에는 Context의 기본값을 설정할 수 있다.

const UserDispatch = React.createContext(null);

Context 를 만들면, Context 안에 Provider 라는 컴포넌트가 들어있는데 이 컴포넌트를 통하여 Context 의 값을 정할 수 있다.

<UserDispatch.Provider value = {dispatch}>...</UserDispatch.Provider>
Provider에 의해 감싸진 컴포넌트 중 어디서든지 Context의 값을 다른 곳에서 바로 조회해서 사용가능하다.

 

참고 -> 예시 react-demo project(MaterialUI)

https://react.vlpt.us/mashup-todolist/02-manage-state.html

 

2. Context API를 활용한 상태 관리 · GitBook

02. Context API 를 활용한 상태 관리 우리가 만든 투두 리스트 애플리케이션에서, 만약 상태 관리를 한다면 다음과 같은 구조로 구현 할 수 있습니다. App 에서 todos 상태와, onToggle, onRemove, onCreate 함

react.vlpt.us

 

 

https://velog.io/@velopert/react-context-tutorial

 

다른 사람들이 안 알려주는 리액트에서 Context API 잘 쓰는 방법

여러분, 리액트로 웹 애플리케이션 개발 하면서 Context API를 어떻게 사용하고 계신가요? 과거에도 관련 포스트를 작성한적이 있긴 하지만, 지난 몇 년간 Context를 사용하면서 습득하게된 팁들을

velog.io

 위글 : Context API를 사용할 때 값과 업데이트 함수를 두개의 Context로 분리하기 - useReducer 같이 사용(핵심)

3. useReducer

https://react.vlpt.us/basic/20-useReducer.html

 

20. useReducer 를 사용하여 상태 업데이트 로직 분리하기 · GitBook

20. useReducer 를 사용하여 상태 업데이트 로직 분리하기 이 프로젝트에서 사용된 코드는 다음 링크에서 확인 할 수 있습니다. useReducer 이해하기 우리가 이전에 만든 사용자 리스트 기능에서의 주

react.vlpt.us

'Front-end > React.js(Next.js)' 카테고리의 다른 글

useRef, forwardRef  (0) 2022.11.10
React- router  (0) 2022.11.09
React 기본 (초기 세팅)  (0) 2022.11.07
Redux 리덕스(vs. Context API)  (0) 2022.11.02
리액트를 다루는 기술  (0) 2022.09.25