


import { createContext } from 'react';
// MyContext 객체 생성
const MyContext = createContext();
function App() {
return (
<MyContext.Provider value="Hello World!">
<GrandParent ~~value="Hello World!"~~/>
</MyContext.Provider>
);
}
function App() { // 생략 }
function GrandParent(~~{ value }~~) {
return <Parent ~~value={value}~~ />;
}
function Parent(~~{ value }~~) {
return <Child ~~value={value}~~ />;
}
function Child(~~{ value }~~) {
return <Message ~~value={value}~~ />;
}
function Message(~~{ value }~~) {
const value = useContext(MyContext);
return <div>전달받은 데이터 : {value}</div>;
}
export default App;
자식 컴포넌트에서 useContext() 함수를 사용하고 있는데, 부모 컴포넌트가 Provider를 사용하지 않은 경우
value 값을 지정해주지 않았기 때문에 해당 값이 출력될 자리에 아무것도 나타나지 않음
기본값을 설정하면 이러한 문제를 방지할 수 있음
기본값 지정 방법
const MyContext = createContext("Default Value");