<Link>
안에 사용되던 <a>
태그 불필요New app Directory (Beta) : https://nextjs.org/blog/next-13#new-app-directory-beta
SSG(getStaticProps) : 빌드 시 딱 한번만 호출
fetch(URL, { cache: "force-cache" });
SSR(getServerSideProps) : 매 요청때마다 호출
fetch(URL, { cache: "no-store" });
ISR(getStaticProps + revalidate) : 빌드 시 호출한 뒤 revalidate 옵션에 설정 된 시간마다 호출
fetch(URL, { next: { revalidate: 10 } });
실습 내용
experimental: { appDir: true }
과 같은 옵션을 next.config.js
에 추가해주어야 한다.head.js
, layout.js
, page.js
가 생성된다.page.js
를 생성하면 자동 라우팅이 적용되는 것을 확인해볼 수 있다. page.js
가 이전 버전에 index.js
를 대체한다고 보면 될 것 같다.이미지와 동일하게 Layout Shift 현상 자동 처리
구글 폰트 내장
커스텀 폰트를 포함하여 글꼴을 자동으로 최적화
개인 정보 보호 및 성능 향상을 위해 외부 네트워크 요청 제거
모든 글꼴 파일에 대한 자체 호스팅
CSS 및 글꼴 파일은 빌드 시 다운로드되며 나머지 정적 파일과 함께 자체 호스팅을 지원
사용 예시
// 구글 폰트 사용
import { Inter } from "@next/font/google";
const inter = Inter();
<html className={inter.className}></html>;
// 사용자 정의 글꼴
import localFont from "@next/font/local";
const myFont = localFont({ src: "./my-font.woff2" });
<html className={myFont.className}></html>;