Tsconfig.jsonにいくつかのファイルを含めようとしていますが、含めたくないファイルが含まれています。 (検索構文でアスタリスクがどこでも使用されているのがわかりますが、この構文がどこから来ているのか、どこからそれを学ぶのか分かりません。)リポジトリから(コンパイルされていないソースで).ts
で終わるファイルを含めようとしています、ただし.spec.ts
で終わるものを除きます。
以下には、必要なファイルが含まれていますが、不要なファイルは正常に除外されません。
"include": ["node_modules/dashboard/**/*.ts"],
"exclude": ["node_modules/dashboard/**/*.spec.ts"],
これらのファイルを除外するにはどうすればよいですか?
編集:最初は**/**.ts
と**/**.spec.ts
を使用していました。これは正しくありませんでしたが、修正したので、同じ問題が発生しています。
TypeScriptハンドブックには、tsconfigファイルに関する適切な記述があります 。
ハンドブックの例は次のとおりです。
"exclude": [
"node_modules",
"**/*.spec.ts"
]
フォルダーには**
を使用し、ファイル名のワイルドカードには*
(単一のアスタリスク)を使用していることに注意してください。
特定のサブディレクトリ内のファイルだけでなく、「すべてのスペックファイル」を除外したいと思うので、通常はこれ以上具体的である必要はありません。
これが機能しない場合があります。
tsc app.ts
を使用してコンパイルする(または他の引数を渡す)-これを行うと、tsconfigは無視されます使用できます
"exclude": ["node_modules/dashboard/**/*.spec.ts"]
に変更:
"include": ["node_modules/dashboard/**/*.ts"],
"exclude": ["node_modules/dashboard/**/*.spec.ts"],
問題を修正します。 ドキュメント から:
* 0個以上の文字に一致します(ディレクトリ区切り文字を除く)
?任意の1文字に一致します(ディレクトリ区切り文字を除く)
** /すべてのサブディレクトリに再帰的に一致します
**の2番目の使用は、インクルードが広すぎる原因となっていました。