Q. 상태관리방법
현재진행중인 코드구현은 페이지가 렌더링될 떄 useEffect를 통해 데이터패칭을 리덕스 Slice에서 진행하고 패칭된 데이터를 각 컴포넌트에서 useSelect를 통해 얻어오는 방식으로 구현하고 있습니다.
이게 올바른 방법인지에 대한 의문이 있는데, 데이터 패칭을 페이지에서 useAxios라는 추상화된 커스텀훅으로 진행한 뒤 리덕스로 데이터를 전송해 하위컴포넌트들에서 끌어쓰는 방식이 올바른건지 지금의 구현방식 자체도 괜찮은 방법인지에 대한 의문이 있습니다.
두번째는 API 관련 질문입니다.
POSTList를 조회하는 api가 존재하고 post_id를 통해 하나의 POST를 반환하는 api도 존재합니다.
리덕스에서 만약 POSTLikst라는 배열의 상태를 만든다면 id를 통해 패칭하는 과정이 줄어들것으로 예상하고, 실제 detail페이지에서 post_id값으로 배열을 순회하면서 찾고자 하는 POST를 찾을 수 있지않을까? 하는 생각을 갖고있는데 또 반대로 생각하면 하위컴포넌트들에서 모두 post_id값을 통해 배열을 순회해야하는건가 라는 단점도 존재한다고 생각해서 어떠한 방향성이 올은것인지 잘 모르겠습니다.
마지막으로 예를들어 Comment라는 모델의 객체가 존재할 때 , Commnet컴포넌트에서 createdAt, title만을 필요로하면 컴포넌트에서 해당 내용들만 useSelect를 통해서 얻어와서 바로사용하는게 좋은지, 아니면 Comment모델의 객체데이터를 모두가져와서 구조분해할당을 통해 데이터를 사용하는게 좋은지 의문이 있습니다. 만약 첫번쨰 코드를 작성하게되면 데이터가 이동하는 거리는 줄어들겠지만, 각 데이터를 별도로 꺼내오기 위한 코드가 길어질것으로 예상되는데 어떠한 방법이 정답일까요??