[Next.js] tsconfig.jsonの設定

nextjs-tsconfig
INDEX

はじめに

Next.jsのtsconfig.jsonについて学習をしました。
その結果を執筆します。

tsconfig.jsonとは

TypeScriptプロジェクトの設定ファイルであり、 TypeScriptコンパイラに対してプロジェクトのビルド方法やコンパイルオプションを指示するためのものです

手順

1. tsconfig.jsonの作成

下記コマンドでデフォルトで作成する事が出来ますが、PJ作成時に作成されます。
tsc --init

2. 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",
    "incremental": true,
    "baseUrl": "src"
  },
  "include": [
    "next-env.d.ts",
    "src/**/*.ts",
    "src/**/*.tsx"
  ],
  "exclude": [
    "node_modules"
  ]
}
項目役割
tacompilerOptionsgetTypeScript コンパイラの設定が含まれるセクションです。
targetコンパイルされる JavaScript のバージョンを指定します。この場合は ECMAScript 5 (es5)
libコンパイル時に使用可能なライブラリのリストです。dom、dom.iterable、esnext が含まれています。
allowJsJavaScript ファイルもコンパイルの対象とするかどうかを指定します。
skipLibCheckライブラリの型チェックをスキップするかどうかを指定します。
strict厳格な型チェックを有効にします。
forceConsistentCasingInFileNamesファイル名の一貫性を強制するかどうかを指定します。
noEmit実際に JavaScript ファイルを生成しないようにします。
esModuleInteropCommonJS モジュールと ES6 モジュールの相互運用性を改善するための設定です。
moduleモジュールのコード生成方式を指定します。ここでは ES6 モジュールを指定しています。
moduleResolution
モジュール解決の方法を指定します。ここでは Node.js の方式を使用しています。
resolveJsonModuleJSON ファイルを import 文で読み込むことを可能にするかどうかを指定します。
isolatedModulesファイルごとに個別の型チェックとコンパイルを行うかどうかを指定します。
jsxJSX ファイルの扱いを指定します。ここでは “preserve” としています。
incremental増分ビルドを有効にするかどうかを指定します。
baseUrl増分ビルドを有効にするかどうかを指定します。
includeコンパイルの対象となるファイルやディレクトリのリストです。next-env.d.ts、src//*.ts、src//*.tsx が含まれています。
excludeコンパイルから除外するファイルやディレクトリのリストです。ここでは “node_modules” が除外されています。
tsconfig.jsonの解説
よかったらシェアしてね!
  • URLをコピーしました!

この記事を書いた人

Born in 1994
Engineer's career is from 2020.10
Skill: Next.js, TypeScript, Django, Python, HTML, CSS

INDEX