개발자

리덕스에 대해 궁금한점이 있습니다.

2024년 07월 11일조회 53

안녕하세요 리덕스에 대해 여쭤볼게 있습니다. 리덕스를 사용하면 state를 부모에서 자식으로 계속 내려주는 방법으로 하지 않고 필요한 컴포넌트에 바로 state를 전달 할 수 있다...라고 이해를 했습니다. 여기서 궁금한점이 예를 들어 데이터를 저장하는 state도 있고 모달창을 할때 사용하는 state도 있을텐데 모든 state를 리덕스로 만드는건가요? 아니면 어떤 state만 리덕스로 저장해서 사용하면 되는지 쉽게 알려주시면 너무 감사드리겠습니다.

이 질문이 도움이 되었나요?
'추천해요' 버튼을 누르면 좋은 질문이 더 많은 사람에게 노출될 수 있어요. '보충이 필요해요' 버튼을 누르면 질문자에게 질문 내용 보충을 요청하는 알림이 가요.
profile picture
익명님의 질문

답변 1

김하늘님의 프로필 사진

부모에서 자식으로 계속 내려주는 상태를 지역 상태, 리덕스 등을 이용하여 필요한 곳에서 바로 전달할 수 있는 상태를 전역 상태라합니다. 각 상태는 상황에 따라 적절하게 사용하시면 됩니다. 즉 질문에 대답하자면 '어떤 state만 리덕스로 저장해서 사용'하시면 됩니다. 그럼 이제 '어떤'에 해당하는 상태가 무엇인지 구분할 수 있는 능력이 필요하겠네요. 여러가지 기준이 있을 수 있겠습니다. 말씀하신대로 부모, 자식 컴포넌트 사이가 너무 멀어 계속 전달(이를 props drilling이라 합니다.)하는 게 번거롭다면 전역 상태를 사용하는 게 좋은 옵션이 될 수 있습니다. 한편 용어의 뜻 그대로 어떤 상태가 지역적으로 필요한 값이라면, 즉 특정 영역에만 국한된 관심사를 갖고 있다면 지역 상태, 여러 영역에 걸쳐 쓰일 예정이라면 전역 상태를 이용하는 편이 낫겠죠. 예를 들어, 특정 페이지에서의 옵셔널하게 렌더링되는 특정 컴포넌트에 대한 visible 여부는 지역 상태로 관리하는 게 보통 나을 겁니다. 반면 모든 페이지가 로그인 여부에 따라 다른 화면을 보여줘야 한다면 로그인 여부는 전역 상태로 관리하는 게 낫겠죠.

지금 가입하면 모든 질문의 답변을 볼 수 있어요!

현직자들의 명쾌한 답변을 얻을 수 있어요.

또는

이미 회원이신가요?

목록으로
키워드로 질문 모아보기

실무, 커리어 고민이 있다면

새로운 질문 올리기

지금 가입하면 모든 질문의 답변을 볼 수 있어요!