tsconfig.json の設定項目一覧
- exclude
- 除外するファイルを記述する
- デフォルトでnode_moduleは除外されるが他のファイルを指定する場合はnode_moduleも指定しなければならない
- include
- コンパイラするファイルを指定する
- デフォルトは全てのファイル
- files
- includeとほぼ同じ
- includeとの違いはexcludeに指定されているものも指定できる
- target
- 特定のバージョンのJavaScriptに変換する
- デフォルトはes3
- lib
- TypeScriptが用意している型の定義を追加する
- デフォルトではtargetによって自動で指定される
- arrowJs
- JavaScriptもコンパイルの対象にするか
- checkJs
- jsファイルにおいてもTypeScriptのlinterとしての役割を適用するか
- arrowJsと同時に使うことで有効
- jsx
- React.jsで使用
- declaration declarationMap
- 型定義ファイルを作成するか 拡張子
.d.ts
- sourceMap
- ブラウザでTypeScriptを操作できるようにする(開発者ツールのsourceでTypeScriptファイルが確認できる)
- 拡張子
.js.map
- outDir
- コンパイラされる先を指定する
- デフォルトの挙動として無駄なディレクトリが消されることがある(以下参考)
outDirに"./dist" を指定した場合
- dist
- index.js
- sample.js
- src
- tmp
- index.ts
- sample.ts
- rootDir
- outDirで全てのディレクトリを表示するように指定できる(以下参照)
outDirに "./dist" rootDirに "./" を指定した場合
- dist
- src
- tmp
- index.js
- sample.js
- src
- tmp
- index.ts
- sample.ts
-
removeComments
-
コンパイラされた際にコメントを削除するか
-
noEmit
-
ファイルを作成しない
-
noEmitOnError
-
エラーがある場合ファイルを作成しない
-
strict
-
以下の7つの設定を全て有効にするか
-
noImplicitAny
- 暗黙的なanyにエラーをだす
- 変数の場合エラーにならない
-
strictNullChecks
- 全ての型にnull, undefindを含めるか trueの場合含めない flaseの場合含める
- デフォルトはどの型もnull、undefindを含む
-
strictFunctionTypes
- クラスの継承時に起こり得るバグの可能性を防ぐか
-
strictBindCallApply
- 関数やobjectの中のthisを明示的に指定できる
call, bind, apply
- 上記3つに対して厳しいチェックをするか
- 関数やobjectの中のthisを明示的に指定できる
-
strictPropertyInitialzation
- クラス使用時に厳しいチェックをするか
-
noImplicitThis
- 明示的なThisをエラーとするか
-
alwaysStrict
- コンパイラされたJSファイルに
use strict
を記述するか
- コンパイラされたJSファイルに
-
noUnusedLocals
-
使ってないローカル変数をエラーとする
-
noUnusedParameters
-
使ってないパラメータをエラーとするか
-
noImplicitReturns
-
暗黙的なreturnをエラーとするか