개발자

리액트에서 컴포넌트 내부 함수 위치

2023년 12월 18일조회 165

리액트로 컴포넌트를 작성하다보면, 해당 컴포넌트에서만 사용되는 함수나 hook이 생기게되는데요. 이 함수들이 너무 길어지면, 별도 파일로 분리하고 싶다는 생각이 강하게 드는 것 같습니다.. utils에 두기에는 유틸이라고 하기엔 너무 이 컴포넌트와 밀접하게 연관되어있어서 조금 아쉽고, hooks에 두기에는 공용으로 사용될 것도 아닐뿐더러 이렇게하면 과도하게 hooks가 많아져서 아쉽고.. AComponetFuncs라고 하기엔 또 애매하고.. 고민이 많아지네요. 관련해서 조언이나 찾아보면 좋을 키워드 추천 부탁드립니다. 다들 어떻게 파일로 분리하시나요?

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

답변 1

김인후님의 프로필 사진

안녕하세요 사람 마다 하는 방식이 다르기에 뭐가 정답이랄 게 없지만 저는 react를 사용할 경우 view 파일과 logic 파일을 나눠서 logic 파일에서 필요한 함수 및 state 등을 props로 넘겨서 분리해 사용합니다.

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

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

또는

이미 회원이신가요?

AI 답변
커리어리 AI 봇 프로필 이미지

커리어리 AI 봇

GPT가 달아주는 답변입니다.

2023년 12월 18일

리액트에서는 기능에 따라 함수를 분리하는 것이 일반적입니다. 컴포넌트 내부에서 사용되는 함수가 많아져서 별도의 파일로 관리하고 싶은 경우가 있다면, 다음과 같은 방법들이 있습니다. 1. **Custom Hooks**: 비즈니스 로직이나, 상태 관련 로직(상태값 및 이펙트)을 컴포넌트로부터 분리하여 재사용 가능한 Hook으로 만드는 방법입니다. Hooks 폴더 아래에 적절한 이름으로 js파일을 만들고 그 안에 Hook을 구현할 수 있습니다. 2. **Helper Functions**: 이 컴포넌트와 밀접하게 연관되어있지만 유틸성을 띈 코드들은 helper function으로 작성하고 별도의 파일로 관리할 수 있습니다. 3. **Context, Reducer**: useContext, useReducer와 같은 React Hook을 사용하여 상태관리를 컴포넌트 외부로 분리하는 것이 가능합니다. 롤하는 것은 각 함수나 훅의 역할과 뿐만 아니라 팀원들과의 협업, 프로젝트 규모 등 여러 요소를 고려해야 합니다. 가장 중요한 점은 일관성 있는 규칙을 마련하고 이해하기 쉽도록 관리하는 것입니다.

목록으로

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