Next.js - 공통 문서 만들기

carrot·2021년 10월 22일
0

Nextjs

목록 보기
9/15
post-thumbnail

Document

사용자 정의 Document는 일반적으로 응용 프로그램 html 및 body 태그를 보강하는데 사용됩니다. Document를 이용하여 title, description, meta 등 프로젝트의 정보를 제공하는 html 코드를 작성할 수 있고, font나 외부 api, cdn 등을 불러오도록 할 수 있습니다.(와우!) 또한 CSS-inJS의 서버 사이드 렌더링을 위한 설정을 할 때 사용합니다.

1. CDN font 적용하기

Document를 사용하여 문서에 메타 데이터와 폰트를 추가해 보도록 하겠습니다.
여기서는 구글 폰트를 활용해 보도록 하겠습니다.

위 링크에서 원하는 폰트의 link 정보를 복사한 뒤 document 파일에서 적용해 봅시다.

> pages/_document.jsx

import Document, { Html, Head, Main, NextScript } from "next/document";

class MyDocument extends Document {
  render() {
    return (
      <Html lang="ko">
        <Head>
          <meta name="title" content="Github Repositories" />
          <meta name="description" content="github repositories list" />
          <link
            href="https://fonts.googleapis.com/css2?family=Noto+Sans:wght@400;700&display=swap"
            rel="stylesheet"
          />
          <link
            href="https://fonts.googleapis.com/css2?family=Noto+Sans+KR:wght@400;700&family=Noto+Sans:wght@400;700&display=swap"
            rel="stylesheet"
          />
        </Head>
        <body>
          <Main />
          <NextScript />
        </body>
      </Html>
    );
  }
}

export default MyDocument;

프로젝트의 lang, title, description, font 정보를 추가해주었습니다.
font는 _app.jsx의 글로벌 css부분에서 적용하면 됩니다.

폰트 적용 후 브라우저에 접속하면 해당 폰트와 document에서 정의한 head 내용이 적용된 것을 확인할 수 있습니다.

profile
당근같은사람

0개의 댓글