개발자
Next.js13을 처음으로 도입하여 사이트를 개발 중인데, 궁금한 점이 생겨 질문 올립니다. 처음부터 서버컴포넌트와 클라이언트 컴포넌트를 구분하며 개발을 하나요? 아니면, 우선 대부분 클라이언트 컴포넌트로 구현하고 점차 서버 컴포넌트로 변경하나요?
답변 3
Next13 에서는 모든 컴포넌트가 기본적으로 서버컴포넌트 입니다. 때문에 클라이언트컴포넌트를 사용하려면 "use client" 를 컴포넌트에 선언해줘야합니다. 클라이언트 컴포넌트가 필요한 상황에서만 선언해서 사용하는 편입니다. 사용자와 상호작용이 필요하거나 브라우저의 클라이언트기능을 활용해야한다거나 훅을 사용해야하거나 이런 상황이 아니라면 번들사이즈나 렌더링 최적화의 이점을 가져가기위해 기본적으로는 서버컴포넌트를 사용하는것이 좋다고 생각합니다.
구분하여 만듭니다 애초에 그렇게 만들라고 13버전이 나온 겁니다!(공식문서 읽자) 가능한 클라컴포들을 트리 구조상 리프쪽으로 배치하면 성능상 이점을 얻을수 있습니다(무조건은 아님)
지금 가입하면 모든 질문의 답변을 볼 수 있어요!
현직자들의 명쾌한 답변을 얻을 수 있어요.
이미 회원이신가요?
지금 가입하면 모든 질문의 답변을 볼 수 있어요!