개발자

useState 와 함수

2023년 06월 08일조회 100

프로젝트를 하다보면 state에 따라 모달을 열고 닫는 기능을 구현할 때가 많습니다. 이럴 때마다 부모에 state를 만들고 자식(모달)에게 useState를 내리거나 useState를 함수에 감싸서 내리는 두가지 방법에 대해 고민합니다. 복잡한 기능은 당연히 함수로 감싸서 내려야겠지만 단순한 useState만 있는 기능에서는 함수로 감싸지 않는 것이 맞나요? 실무에서는 어떻게 하는지 궁금합니다

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

답변 1

이승로님의 프로필 사진

개인적으로는 useState를 다른 컴포넌트로 전달하지는 않는 방향으로 개발하고 있습니다. 물론 개인적인 견해일 수 있습니다만, useState로 생성한 ‘상태’라는 것은 말 그대로 ‘해당 컴포넌트에 대한’ 상태를 나타내는 데이터라고 생각합니다. 이러한 상태의 변화는 컴포넌트에 큰 영향을 미치기 때문에 그 변화를 제대로 관리하는 것이 중요하다고 생각합니다. 그렇기 때문에 리액트에서는 ‘상태’(state)는 불변성을 유지하고, setter를 통해 값을 변경하도록 단방향 바인딩을 지원하고 있습니다. (물론, 이것에는 다른 이유도 있습니다만) 그런 의미에서 setter를 컴포넌트 외부로 유출하는 것은 이러한 철학과는 조금 맞지 않는 것 같습니다. 물론, 개발을 할 때 ‘어떻게 구현하였는가’에 대한 개인적인 근거나 견해도 중요합니다. 그러나, 언어나 프레임워크를 선택하고 사용한다면, 해당 기술이 추구하는 방향성, 방법론에 대해서도 고민해보시면 도움이 많이 되실 것 같습니다! 😊

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

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

또는

이미 회원이신가요?

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

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

새로운 질문 올리기

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