개발자
요즘 React native를 통해 텀 프로젝트를 하고있습니다. 한 컴포넌트에서 코드가 많아질수록 특정 기능을 하는 코드를 찾을 때 불편함을 겪고 있습니다. 그래서 문득 든 생각이 useState, useEffect, 일반 함수, 이벤트 처리 함수 등 수 많은 코드들이 하나의 훅에서 정의가 되고 있는데 혹시 이것에 대한 순서 규칙이 있나요? 예를 들어서 "useState는 맨 위에 정의되어야 한다." 라는 규칙 같은 게 궁금합니다.
답변 1
말씀하신 hook 선언 순서에는 누군가 정한 규칙은 없고, 팀마다 정하는 컨벤션에 달려있는 것 같아요. 제가 속했던 팀은 useRef useState useEffect 의 순서로 작성하기로 컨벤션을 정했었는데 렌더링에 영향을 주지 않는 useRef를 최상단에 두고 렌더링에 영향을 주는 useState를 그 다음에 두고. 리액트에서 가급적이면 useEffect를 사용하지 말라고하니, 비교적 사용 빈도가 적은 useEffect를 아래에 배치하자는 로직이었습니다 하지만 이게 정답은 아니고, 다른 팀은 다른 방식으로 효율적으로 코드를 관리할 것 같아요. 질문자님도 고민하셔서 현재 상황에 맞게 팀원분들과 상의하시는 것을 추천합니다!
익명
작성자
2023년 08월 08일
어떠한 기준으로 보냐에 따라 달라지는 것 같네요! useEffect의 사용을 지양하라는 말은 처음 듣는 거 같네요,, 아직 배우는 단계라 조금 더 자세히 찾아보고 해봐야겠습니다 답변 감사합니다!
지금 가입하면 모든 질문의 답변을 볼 수 있어요!
현직자들의 명쾌한 답변을 얻을 수 있어요.
이미 회원이신가요?
지금 가입하면 모든 질문의 답변을 볼 수 있어요!