-
부모에서 자식까지 일일이 Prop전달하기 싫을 때?FrontEnd/React 2022. 10. 2. 13:50반응형
가끔 React로 코딩하다보면 부모의 state나 함수를 자식의 자식의 자식...에게 전달해야 할 때가 있다.
그러면 코드도 복잡해지고 가독성이 떨어지는데 이를 해결할 수 있는게 바로 Context이다.
context를 이용하면 단계마다 일일이 props를 넘겨주지 않고도
컴포넌트 트리 전체에 데이터를 제공할 수 있습니다.리액트 공식 홈페이지에 Context란에 가보면 이렇게 설명해준다.
우리는 언제 Context를 쓸 지(일일이 전달하기 번거로울 떄)를 정했으니 어떻게 쓰는지 알아보자.
Context 생성하고 사용해보기
Context를 생성하려면 React.createContext API를 사용하면 끝이다.
const MyContext = React.createContext(defaultValue) 이게 다이다. 그럼 이제 사용해보자
<MyContext.Provider value={값}>
<App/>
<MyContext.Provider />
이렇게 선언해주면 우린 App컴포넌트 안에 있는 모든 자식요소에서 value의 값을 사용할 수 있다.
App 컴포넌트에서 사용한다면 App.contextType = MyContext로 사용할 수 있다.
공식 홈페이지에 살펴보면 Context를 이용한 다른 API와 주의할 점이 설명되어있는데,
자세한 정보를 원한다면 방문해서 읽어보길 바란다.
https://ko.reactjs.org/docs/context.html
반응형'FrontEnd > React' 카테고리의 다른 글
JSX 기본 내용 정리 (0) 2023.02.07 React 비용 계산하기 - React Profiler API (1) 2023.01.08 React 성능을 최적화 해보자! (0) 2023.01.02 동일한 패턴이 여러 컴포넌트에서 쓰이고 있다면? - React 고차 컴포넌트로 해결하기! (0) 2023.01.01 로딩중입니다...는 React로 어떻게 사용할까? (1) 2022.12.27