작성
·
159
0
https://codesandbox.io/s/chapt-15-forked-vrnxn1?file=/src/App.js
안녕하세요. 컴포넌트 트리에 데이터 공급하기 - Context 강의 수강 중에
강의와 함께 강의 참고용 코드 샌드박스를 보면서 궁금한 것이 있어 질문 남깁니다.
위 링크 코드의 115번째 줄처럼
const store = { data };
이후 리턴문에서
<DiaryStateContext.Provider value={store}> 를 작성해줘야
정상적으로 동작하는 것을 확인했는데
강의처럼 <DiaryStateContext.Provider value={data}> 로 수정하면
TypeError Cannot read properties of undefined (reading 'length') 가 뜨면서 제대로 작동되지 않습니다
위 두 방법 (store 변수를 작성해서 넣어주거나, 강의처럼 data 그대로 넣어주거나) 의 차이는 무엇이고
왜 링크의 코드에서 store가 아닌 data를 넣으면 작동하지 않는 건지 궁금합니다..
답변 1
0
안녕하세요 이정환입니다.
DiaryList에서 useContext(DiaryStateContext)로 불러온 값은 그 자체가 일기 데이터 배열입니다.
따라서 const { data } = useContext(...)이 아니라 다음과 같이 사용하셔야합니다.
감사합니다.