인프런 커뮤니티 질문&답변

Eunwoo님의 프로필 이미지

작성한 질문수

기초부터 배우는 Next YTMusic 클론 코딩 (with next.js 14, UI 마스터)

8.1 Category

질문있습니다.

해결된 질문

24.08.09 22:31 작성

·

69

·

수정됨

1

각 페이지마다 loading과 error.tsx를 각각 주고 있는데 그냥

root에 loading.tsx error.tsx를 하나만 둬서 공유하는 방식은 안되나요? 각 페이지마다 따로 둔 이유가 뭔가요?

 

현업에서도 layout은 보통 page마다 다르게 두나요?

이전에는 프로젝트에서 그냥 root에 위치한 하나의 layout만 써와서..

 

강의 잘 보고있습니다. 선생님!

답변 1

1

도도(코딩루팡)님의 프로필 이미지
도도(코딩루팡)
지식공유자

2024. 08. 10. 13:18

네 아주 중요한 차이가 있습니다.

 

Root Level의 로딩, 애러 컴포넌트는 RootLayout

1.첫 패이지 랜더링의 글로벌만 처리합니다.

2.서브페이지의 로딩,애러는 처리하지 못합니다.

 

서브페이지의 로딩,애러 컴포넌트가 있다면

1.루트 컴포넌트가 유지된 상태에서, 서브페이지가 교체됩니다, 이순간 로딩 컴포넌트를 보여줄 수 있습니다

2.해당프로젝트에서는 사이드바 메뉴 유지+ 상단의 로딩바를 볼 수 있습니다.

 

*물론 서브페이지가 빠르게 랜데링이된다면, 로딩바를 제거하는게 오히려 빠른 웹사이트처럼 보일수있어요.!

Eunwoo님의 프로필 이미지

작성한 질문수

질문하기