이번주에는 데브노트를 작성할때 하나의 작업을 진행할 때 어떤 흐름/순서 대로 작업하는지를 중점에 두고 작성했다.
코드 내용도 중요하지만 전체적인 큰 틀을 이해하지 못하고 있는것 같아서 이렇게 학습했더니 확실히 도움이 되었다.
내용과 흐름을 이해하고 데브노트를 작성 후 실습을 하니 보다 수월했음..
잘못한 것은 무엇인가?
그냥 외운것?
내가 잘 모르는 것 같아서 머리로 흐름 정리하고 손으로 외웠다..
그래서 완전히 씹어먹었다기엔 부족하지 않나? 이걸 나 혼자 처음 부터 하라고 한다면 할 수 있을지 의문이 드는 상태
어느 경우에는 페이지에서 props로 내려주고 어떤 경우에는 컴포넌트에서 직접 API를 호출하는지 잘 모르겠음
props drilling 위험이 없는 경우에는 페이지에서 api 호출하고 props로 내려주는데 그걸 어떻게 처음부터 알 수 있는지?? 어떻게 판단할 수 있는지? 이 부분을 잘 모르겠다.
무엇을 배웠는가?
사소한 부분이지만, API 에서 status 같은게 넘어올 때 이 string 그대로 보여주지 않고 나름 처리해서 보여주는데 이걸 어떤식으로 처리해야하는지 알 수 있었다. (주문 상세 강의)
스토어 사용, 스토어를 사용할 수 있도록 hooks 정의, 페이지와 컴포넌트를 분리, 비지니스 로직과 UI 영역 분리
그리고 스토어를 활용하니까 확실히 useState (상태) 사용이 줄었다.
평소에 이 부분이 제일 궁금했었다. 모든걸 상태로 관리하면 안된다고 하는데 그렇다면 이걸 어떻게 관리해야 한다는 건지 조금은 알 것 같다.
예를 들어서 Input 컴포넌트를 만들어놓고 거기서 onChange와 value값을 받아서 매번 상태를 선언하지 않게 한다는것. (이전에 사용하던 useInput 과 상당히 유사한 상태인데 여기서는 input의 type도 받고 placeholder도 받고 여러가지 attrs를 받아서 처리한다는 점) 그리고 이 값을 컴포넌트에서 state로 관리하는것이 아니라 외부 store에서 관리함.