Next.js와 타입스크립트의 조합 사용하기

목차

Next.js와 타입스크립트 소개

Next.js는 React를 기반으로 한 서버사이드 렌더링 프레임워크입니다. 타입스크립트는 정적 타입 검사를 위한 자바스크립트 확장 언어입니다. Next.js와 타입스크립트를 함께 사용하면, 좀 더 안정적이고 안전한 웹 애플리케이션을 개발할 수 있습니다.

Next.js와 타입스크립트 설치

Next.js 프로젝트를 생성한 후, 타입스크립트를 설치해야합니다. 다음 명령어를 사용하여 타입스크립트를 설치합니다.

npm install --save-dev typescript @types/react @types/node

타입스크립트 파일 생성

Next.js와 타입스크립트를 함께 사용하기 위해, .tsx 확장자를 가진 타입스크립트 파일을 생성해야합니다. .tsx 파일은 일반적인 리액트 컴포넌트와 동일하게 작성됩니다.

import React from 'react';

const MyComponent: React.FC = () => {
  return (
    <div>
      <h1>Hello, Next.js with TypeScript!</h1>
    </div>
  );
};

export default MyComponent;

타입스크립트로 Next.js 컴포넌트 작성

타입스크립트 파일로 작성된 Next.js 컴포넌트는 다음과 같이 일반적인 리액트 컴포넌트와 유사합니다. 다만, 컴포넌트의 타입을 명시적으로 정의해주어야합니다.

import React from 'react';

const MyComponent: React.FC = () => {
  return (
    <div>
      <h1>Hello, Next.js with TypeScript!</h1>
    </div>
  );
};

export default MyComponent;

타입스크립트로 Next.js API 라우트 작성

Next.js에서 제공하는 API 라우트를 작성할 때도 타입스크립트를 사용할 수 있습니다. 다음은 간단한 예시입니다.

import { NextApiRequest, NextApiResponse } from 'next';

type Data = {
  message: string;
};

export default (req: NextApiRequest, res: NextApiResponse<Data>) => {
  const { method } = req;

  if (method === 'GET') {
    res.status(200).json({ message: 'Hello, Next.js API route with TypeScript!' });
  } else {
    res.status(405).end();
  }
};

결론

Next.js와 타입스크립트의 조합은 웹 애플리케이션 개발에서 안정성과 타입 검사의 장점을 가져올 수 있습니다. 이 문서에서는 Next.js와 타입스크립트를 설치하고, 타입스크립트 파일을 생성하는 방법, 그리고 Next.js 컴포넌트와 API 라우트를 작성하는 방법에 대해 알아보았습니다.


#nextjs #typescript