Next.js + TypeScriptの環境構築

目次

  1. Next.jsとTypeScriptの概要
  2. 環境構築のための準備
  3. Next.jsプロジェクトの作成
  4. TypeScriptの導入と設定
  5. コンポーネントの作成と型付け
  6. APIルートの作成と型定義
  7. ビルドとデプロイ
  8. おわりに

1. Next.jsとTypeScriptの概要

Next.jsは、Reactベースのフレームワークであり、高速なウェブアプリケーションの構築をサポートします。TypeScriptはJavaScriptのスーパーセットであり、静的な型付けを提供することでコードの品質を向上させます。この記事では、Next.jsとTypeScriptを組み合わせた環境構築について詳しく説明します。

2. 環境構築のための準備

環境構築を始める前に、Node.jsとnpm(またはyarn)がインストールされていることを確認しましょう。また、基本的なコマンドライン操作にも慣れていることが望ましいです。

3. Next.jsプロジェクトの作成

まず、ターミナルで次のコマンドを実行して、新しいNext.jsプロジェクトを作成します。

npx create-next-app my-app

これにより、my-appという名前のディレクトリが作成され、基本的なNext.jsのテンプレートが含まれます。

4. TypeScriptの導入と設定

次に、TypeScriptをプロジェクトに追加します。まず、次のコマンドを実行してTypeScriptの依存関係をインストールします。

cd my-app
npm install --save-dev typescript @types/react @types/node

次に、プロジェクトのルートにtsconfig.jsonファイルを作成し、次の内容を追加します。

{
  "compilerOptions": {
    "target": "es5",
    "lib": ["dom", "dom.iterable", "esnext"],
    "allowJs": true,
    "skipLibCheck": true,
    "strict": true,
    "forceConsistentCasingInFileNames": true,
    "noEmit": true,
    "esModuleInterop": true,
    "module": "esnext",
    "moduleResolution": "node",
    "resolveJsonModule": true,
    "isolatedModules": true,
    "jsx": "preserve"
  },
  "include": ["next-env.d.ts", "**/*.ts", "**/*.tsx"],
  "exclude": ["node_modules"]
}

これにより、TypeScriptの設定が有効になります。

5. コンポーネントの作成と型付け

次に、TypeScriptを使用してコンポーネントを作成します。componentsディレクトリを作成し、MyComponent.tsxという名前のファイルを作成します。次のようなコードを追加しましょう。

import React from 'react';

type Props = {
  name: string;
};

const MyComponent: React.FC<Props> = ({ name }) => {
  return <div>Hello, {name}!</div>;
};

export default MyComponent;

このようにすることで、Props型でnameプロパティの型を指定し、コンポーネントを型安全にします。

6. APIルートの作成と型定義

Next.jsでは、APIルートを作成することもできます。pages/apiディレクトリを作成し、hello.tsという名前のファイルを作成します。次のコードを追加します。

import { NextApiRequest, NextApiResponse } from 'next';

type Data = {
  message: string;
};

export default function handler(req: NextApiRequest, res: NextApiResponse<Data>) {
  res.status(200).json({ message: 'Hello, API!' });
}

APIルートで使用するデータ型も定義しています。

7. ビルドとデプロイ

環境構築が完了したら、次はビルドとデプロイの準備です。次のコマンドを実行してアプリケーションをビルドします。

npm run build

ビルドが成功すると、.nextディレクトリにビルドされたファイルが生成されます。

デプロイするには、お好みのホスティングプロバイダーを使用して、ビルドされたファイルをデプロイします。例えば、VercelやNetlifyなどがおすすめです。

8. おわりに

この記事では、Next.jsとTypeScriptの環境構築について説明しました。環境のセットアップからコンポーネントの作成と型付け、APIルートの作成、ビルドとデプロイまでをカバーしました。Next.jsとTypeScriptの組み合わせは、開発効率とコードの品質を向上させるための強力なツールです。ぜひ、これらの技術を活用して、高品質なNext.jsアプリケーションを構築してみてください。