작성
·
227
0
안녕하세요!
React 와 Next 의 component 선언 방식에 대한 convention 이 궁금하여 질문드립니다.
Component 는 사실 하나의 함수입니다. 그리고 JavaScript 에서는 2가지 방식으로 함수를 선언할 수 있습니다. 하나는 화살표 함수이고 또 다른 하나는 function keyword 를 사용하는 것입니다.
이 두 함수 선언 방식의 차이에는 크게 hoisting 과 this keyword 가 있습니다. 궁금하신 분들은 Arrow Functions vs Regular Functions in JavaScript – What's the Difference? (freecodecamp.org) 를 읽어보시면 좋을 것 같습니다. 이번 질문은 기능상의 차이 보다는 "일반적으로" 무엇을 사용하느냐 에 대한 질문입니다.
Arrow Function Component
interface ComponentProps { ... }
const Component = ({ ... }: ComponentProps) => { ... }
export default Component;
Regular Function Component
interface ComponentProps { ... }
export default function Component({ ... }: ComponentProps) {
...
}
제가 생각했을 때는 export default 를 한번에 사용하기 위해서 regular function 으로 공식 문서나 강의 자료가 작성되어 있는 것으로 생각이 되어지는데, 더 일반적인 선언 방식은 무엇일까요? 물론 convention 이라는 게 없을 수도 있고 사실 프로젝트마다 다르게 정할 수는 있겠지만, 더 일반적인 방식이 무엇인지 궁금하여 질문드립니다.
답변 1
1
저도 개인인지라 일반적인 방법이 무엇인지를 알 수가 없습니다. 제가 설문조사를 하거나 한 적도 없으니까요. 저조차도 신경도 쓰지 않고 있습니다. React나 Next나 컴포넌트 운용 방식에 차이는 없으므로 동일할 것이라 생각합니다.