React의 SSR(Server Side Rendering)을 쉽게 구현하게 하는 프레임워크.
리액트로 개발 시 SPA(Single Page Application)을 이용해 CSR(Client Side Rendering)을 해서 장단점이 있는데 검색엔진 최적화 부분의 단점이 있다. CSR을 하면 첫페이지에 빈 html을 가져와 JS를 해석해서 화면을 구성해서 검색엔진에 노출이 힘들다.
Next.js에서는 Pre Rendering을 통해 미리 렌더링해서 html을 가져와 사용자나 검색엔진 크롤러한테 바로 페이지를 전달한다.
리액트에서도 SSR을 지원하지만 구현이 복잡해서 Next.js를 사용해 해결한다.
yarn create next-app
yarn create next-app --typescript ./
index.tsx
: "/" 페이지_app.tsx
: 공통 레이아웃 작성, 모든 페이지에 공통으로 들어가는 요소를 넣는 페이지, url로 어떤 페이지에 들어가기전에 통과하는 페이지다.about.tsx
: about페이지를 만들시 생성ClientSide에서 자바스크립트 처리 전에 미리 페이지를 위한 HTML을 생성하는 방식으로, 검색엔진 최적화가 효율적으로 이루어진다.