FE/React & RN
[ React ] Context API
Chars4785
2019. 8. 18. 12:10
context 를 이용하면 단계마다 일일이 props를 넘겨주지 않고도 컴포넌트 트리 전체에 데이터를 제공할 수 있습니다.
일반적인 React 애플리케이션에서 데이터는 위에서 아래로 (즉, 부모로부터 자식에게) props를 통해 전달되지만, 애플리케이션 안의 여러
컴포넌트들에 전해줘야 하는 props의 경우 (예를 들면 선호 로케일, UI 테마) 이 과정이 번거로울 수 있습니다. context를 이용하면, 트리 단
계마다 명시적으로 props를 넘겨주지 않아도 많은 컴포넌트가 이러한 값을 공유하도록 할 수 있습니다.
[ 참고 공식문서 ]
https://ko.reactjs.org/docs/context.html
Context – React
A JavaScript library for building user interfaces
ko.reactjs.org
하지만 useContext Hook 이 나오면서 사용방법이 더 편안히 바뀌었다.
import React, {createContext, useContext} from 'react';
const Mycontext = createContext('default');
function Child(){
const text = useContext(Mycontext);
return <div>{text}</div>
}
function Parent(){
return <Child />
}
function GrandParent(){
return <Parent />
}
function ContextSample(){
return(
<Mycontext.Provider value="GOOD">
<GrandParent />
</Mycontext.Provider>
);
}
useContext 와 createContext를 이용해서 쉽게 이용가능하다.