通常、私はtsc -p ./tsconfig.json
を実行します。このタイプは、tsconfigに関連する./src
フォルダー内のすべてのファイルをチェックします。
しかし、tsc -p ./tsconfig.json src/specific-file.ts
を実行すると、文句を言います
エラーTS5042:オプション 'プロジェクト'をコマンドラインでソースファイルと混在させることはできません。
したがって、オプションを削除してtsc src/specific-file.ts
を実行すると、ファイルがチェックされますが、tsconfigの設定は使用されません(tsconfigファイルを指定していないためですか?)。
単一のファイルでtsc
を実行し、プロジェクト全体で使用されるtsconfigの設定を使用するにはどうすればよいですか?
TypeScriptコンパイラAPIを使用して独自のコマンドラインツールを作成する以外に、本当に良い解決策はわかりません。あなたが考えるかもしれない2つのより簡単なアプローチ:
元のtsconfig.json
を拡張してfiles
を必要なファイルだけに設定する一時的なtsconfig.json
ファイルを生成するスクリプトを記述します。ただし、指定したファイルのタイプチェックに必要なグローバル宣言が他のファイルに含まれている場合、他のファイルが読み込まれない可能性があるため、このアプローチは機能しない可能性があります。
プロジェクト全体でtsc
を実行し、 この回答 に示すように出力をフィルタリングするスクリプトを記述します。ただし、パフォーマンスが懸念事項である場合、これは役に立ちません。
絶対パスにスペースが含まれていないことを確認してください。それでもエラーが発生する場合は、tsconfig.json
がプロジェクトの構成用であり、コマンドライン引数がファイル用であることが原因である可能性があります。