プログラミングマガジン

プログラミングを中心にIT技術をできるだけわかりやすくまとめます。

  • ホーム
  • TypeScript
  • 【TypeScript】「tsconfig.json」とは?
 
 
     
  • サーバー言語  
    • Python
    • Ruby
    • PHP
    • SQL
  •  
  • インフラ  
       
    • AWS
    •  
    • 基本
    • Git
  • Web
       
    • Web開発
    • JavaScript
    • Vue.js
    • React
  •  
  • 設計  
       
    • 実装設計
    • DB設計
  • 問い合わせ
  

【TypeScript】「tsconfig.json」とは?

04.18

  • miyabisan2
  • コメントを書く

この記事は2分で読めます

tsconfig.jsonとは?

TypeScriptでコンパイルの設定を行うファイルです。

作成方法

下記コマンドで生成できます。

1
npx tsc --init

デフォルトの挙動

tscと打つだけで全てのtypescriptファイルがコンパイルされます。(tsconfig.jsonがない場合は一つ一つやるしかなかった。)

内容

下記のような内容になっています。各行がコンパイル時にチェックをする内容になっています。大部分がコメントアウトされていますがコメントアウトされている行がデフォルトでチェックする設定になっています。もしチェックを外したい場合はコメンツアウトを外し、false等に変更する必要があります。

1
2
3
4
5
6
7
8
9
  "compilerOptions": {
    /* Basic Options */
    // "incremental": true,                   /* Enable incremental compilation */
    "target": "es5",                          /* Specify ECMAScript target version: 'ES3' (default), 'ES5', 'ES2015', 'ES2016', 'ES2017', 'ES2018', 'ES2019' or 'ESNEXT'. */
    "module": "commonjs",                     /* Specify module code generation: 'none', 'commonjs', 'amd', 'system', 'umd', 'es2015', or 'ESNext'. */
    // "lib": [],                             /* Specify library files to be included in the compilation. */
    // "allowJs": true,                       /* Allow javascript files to be compiled. */
    // "checkJs": true,                       /* Report errors in .js files. */
‥

compilerOptions

 

 

設定項目 内容 デフォルト
strictNullChecks
変数にNullが代入されたらエラーとします。
target 変換後のesのバージョンを指定できます。 es3
lib TypeScriptが用意している型定義を指定してコンパイル時にそれを考慮してくれるようにする。 targetによって変わるが、様々な定義ファイル(*.d.ts)

例:ES5、DOMなど。

allowJs JavaScriptをコンパイル対象に含む
checkJs JSもTSと同様にエラーをチェックするか。allowJsと一緒に指定する必要がある。これ単体では使わない。
jsx Reactで使う。
declaration
型定義ファイルが作られる。
declarationMap
sourceMap JSとTSの架け橋のマップファイルを作成する。ブラウザでTypeScriptファイルを見たい場合に指定します。ブラウザの開発者ツールのSourcesでtsファイルが生成されています。 false
outDir コンパイル後のJSの出力先
rootDir デフォルトだとoutDirは階層がちゃんと作られない場合があります。これを指定すれば階層までちゃんと再現してくれます。
removeComments コメントを消すかどうか。
noEmit 何も出力しない。TSのコードがちゃんと書けているかのエラーだけチェックする。
downlevelIteration
コード書いてfor 〜 ofが動かない場合に使う。 false
noEmitOnError エラーが発生した場合はJSコードを変換しない。
strict 7個の別の設定値が全てtrueになる。
noImplicitAny
暗黙のanyは避けようよ。
noUnusedLocals
使ってないローカル変数は禁止する。
noImplicitReturns
returnを明示しろ。

include

コンパイル対象を絞れます。

exclude

特定のtypescriptファイルをコンパイル対象から除きたい場合に使います。なお、includeを指定しているものをexcludeした場合はこちらが優先されます。

デフォルトの挙動

何もexcludeを記述しない場合はデフォルトで以下のフォルダはのぞいてくれます。

1
node_modules

ただ、明示的にexcludeを指定する場合はnode_modulesも指定しないとだめです。上書きされてしまいます。

ワイルドカード

1
2
*.spec.ts // 特定のファイル名がついているものだけ。
**/index.ts //特定ディレクトリだけ

files

ファイルのみを指定します。ディレクトリは指定できません。

1
src/index.ts

スポンサーリンク
  • 2020 04.18
  • miyabisan2
  • コメントを書く
  • TypeScript
  • Tweets Twitter
  • このエントリーをはてなブックマークに追加
  • LINEで送る

関連記事

  1. 2020 04.19

    【TypeScript】「関数」、「クラス」に関する知識

  2. 2022 01.08

    【TypeScript】「オーバーロード」について

  3. 2020 04.19

    【TypeScript】「unknown型」について

  4. 2021 03.14

    【TypeScript】「Exclude」、「Extract」、「NonNullable」について

  5. 2020 04.13

    【TypeScript】「変数」、「定数」、「データ型」、「型推論」、「配列」

  6. 2021 02.28

    【TypeScript】「Record」型について

  • コメント ( 0 )
  • トラックバック ( 0 )
  1. この記事へのコメントはありません。

  1. この記事へのトラックバックはありません。

返信をキャンセルする。

【TypeScript】「変数」、「定数」、「データ型…

【TypeScript】「共用体型(union型)」「…

RETURN TOP

著者プロフィール

エンジニア歴10年で過去に業務系、Webデザイン、インフラ系なども経験あります。現在はWeb系でフロントエンド開発中心です。

詳細なプロフィールはこちら

スポンサーリンク

カテゴリー

  • Android
  • AngularJS
  • API
  • AWS
  • C++
  • CSS
  • cursor
  • C言語
  • DDD
  • DevOps
  • Django
  • Docker
  • Figma
  • Git
  • GitLab
  • GraphQL
  • gRPC
  • Hasura
  • Java
  • JavaScript
  • Kubernetes
  • Laravel
  • linux
  • MySQL
  • Next.js
  • nginx
  • Node.js
  • NoSQL
  • Nuxt.js
  • Oracle
  • PHP
  • Python
  • React
  • Redux
  • Rspec
  • Ruby
  • Ruby on Rails
  • Sass
  • Spring Framework
  • SQL
  • TypeScript
  • Unity
  • Vue.js
  • Webサービス開発
  • Webデザイン
  • Web技術
  • インフラ
  • オブジェクト指向
  • システム開発
  • セキュリティ
  • その他
  • データベース
  • デザインパターン
  • テスト
  • ネットワーク
  • プログラミング全般
  • マイクロサービス
  • マイクロソフト系技術
  • マルチメディア
  • リファクタリング
  • 副業
  • 未分類
  • 業務知識
  • 生成AI
  • 設計
  • 関数型言語
RETURN TOP

Copyright ©  プログラミングマガジン | プライバシーポリシー