Root Fields
Starting up are the root options in the TSConfig - these options relate to how your TypeScript or JavaScript project is set up.
# Files - files
プログラムに含めるファイルの許可リストを指定します。ファイルが見つからない場合、エラーが発生します。
{" ": {}," ": ["core.ts","sys.ts","types.ts","scanner.ts","parser.ts","utilities.ts","binder.ts","checker.ts","tsc.ts"]}
このオプションは、プロジェクトが少数のファイルから構成されていて、グロブパターンを必要としない場合で有用です。
グロブパターンが必要な場合、include
を利用してください。
# Extends - extends
extends
の値は、別の継承対象の設定ファイルへのパスを含む文字列です。
Node.js におけるモジュール解決の流儀が用いられます。
ベースとなるファイルからの設定が最初に読み込まれ、続いて継承ファイルの設定によってオーバーライドされます。設定ファイル内のすべての相対パスは、元の設定ファイルを起点として解決されます。
継承した設定ファイルのfiles
、include
およびexclude
はベースとなる設定ファイルの内容を上書きします。
また、継承における循環参照は許容されません。
例
configs/base.json
:
{" ": {" ": true," ": true}}
tsconfig.json
:
{" ": "./configs/base"," ": ["main.ts", "supplemental.ts"]}
tsconfig.nostrictnull.json
:
{" ": "./tsconfig"," ": {" ": false}}
- Default:
false
- Released:
# Include - include
プログラムに含めるファイル名またはパターンのリストを指定します。
ファイル名はtsconfig.json
ファイルを含んでいるディレクトリからの相対パスとして解決されます。
json
{"include": ["src/**/*", "tests/**/*"]}
この設定は以下のようにマッチします。
.├── scripts ⨯│ ├── lint.ts ⨯│ ├── update_deps.ts ⨯│ └── utils.ts ⨯├── src ✓│ ├── client ✓│ │ ├── index.ts ✓│ │ └── utils.ts ✓│ ├── server ✓│ │ └── index.ts ✓├── tests ✓│ ├── app.test.ts ✓│ ├── utils.ts ✓│ └── tests.d.ts ✓├── package.json├── tsconfig.json└── yarn.lock
include
とexclude
はグロブパターンのためのワイルドカードをサポートしています:
*
ゼロ個以上の文字列にマッチ(ディレクトリセパレータは除く)?
任意の 1 文字にマッチ(ディレクトリセパレータは除く)**/
任意階層の任意ディレクトリにマッチ
グロブパターンがファイルの拡張子を含まない場合、サポートされる拡張子のみが含まれるようになります(例:.ts
、.tsx
と.d.ts
はデフォルトでインクルードされ、.js
と.jsx
はallowJs
が設定された場合のみインクルードされます)。
# Exclude - exclude
include
の解決時にスキップさせるファイル名やパターンのリストを指定します。
重要: exclude
はinclude
の結果として、どのファイルが含まれるべきかのみに影響を与えます。
exclude
に指定されたファイルは、コードでのimport
やtypes
でのインクルード、/// <reference
ディレクティブ、files
リストの指定によって、コードベースの一部となり得ます。
exclude
はコードベースに含まれているファイルの読み込みを防ぐための仕組みではありません。include
設定の結果を変更するだけです。
# References - references
プロジェクト参照は TypeScript のプログラムを小さい断片に分けて構造化するための手法です。 プロジェクト参照を用いると、ビルド時間やエディターとのインタラクションに必要な時間が大幅に改善され、コンポーネント間の論理分割が強制により、より洗練された方法でコードを整理できます。
プロジェクト参照がどのように動作するかについては、このハンドブックのProject Referencesを読んでください。
- Default:
false