ts プロジェクトの詳細な tsconfig 構成

"compilerOptions": {

  "incremental": true, // TS コンパイラは 1 回目のコンパイル後にコンパイル情報を格納するファイルを生成し、2 回目のコンパイルでは 1 回目のコンパイルに基づいてインクリメンタル コンパイルを実行するため、コンパイル速度が向上します。

  "tsBuildInfoFile": "./buildFile", // インクリメンタル ビルド ファイルの保存場所

  "diagnostics": true, // 診断情報を出力します 

  "target": "ES5", // ターゲット言語のバージョン

  "module": "CommonJS", // 生成コードのテンプレート標準

  "outFile": "./app.js", // AMD モジュールで使用できる複数の相互依存ファイルを 1 つのファイルに生成します。

  "lib": ["DOM", "ES2015", "ScriptHost", "ES2019.Array"], // TS が参照する必要があるライブラリ、つまり宣言ファイル、es5 のデフォルトは dom, es5, scripthost, es Advanced バージョンの機能を使用する必要がある場合は、通常、es8 の新しいアレイ機能を導入する必要があるなど、「ES2019.Array」を導入する必要があります。

  "allowJS": true, // コンパイラが JS、JSX ファイルをコンパイルできるようにする

  "checkJs": true, // JS ファイルのエラーを許可します。通常は allowJS と一緒に使用します

  "outDir": "./dist", // 出力ディレクトリを指定

  "rootDir": "./", // 出力ディレクトリ構造を制御するために使用される出力ファイル ディレクトリ (出力用) を指定します。

  "declaration": true, // 宣言ファイルを生成します。宣言ファイルは、開いた後に自動的に生成されます

  "declarationDir": "./file", // 生成された宣言ファイルを格納するディレクトリを指定

  "emitDeclarationOnly": true, // js ファイルではなく、宣言ファイルのみを生成します

  "sourceMap": true, // 対象ファイルのsourceMapファイルを生成

  "inlineSourceMap": true, // ターゲット ファイルのインライン SourceMap を生成します。インライン SourceMap は、生成された js ファイルに含まれます。

  "declarationMap": true, // 宣言ファイルの sourceMap を生成します

  "typeRoots": [], // 宣言ファイル ディレクトリ、デフォルトでは node_modules/@types

  "types": [], // ロードされた宣言ファイル パッケージ

  "removeComments":true, // コメントを削除 

  "noEmit": true, // ファイルを出力しません。つまり、コンパイル後に js ファイルは生成されません。

  "noEmitOnError": true, // エラー送信時にファイルを出力しません

  "noEmitHelpers": true, // ヘルパー関数を生成しない、サイズを縮小する、追加のインストールを必要とする、よく importHelpers と一緒に使用される

  "importHelpers": true, // tslib を介してヘルパー関数をインポートします。ファイルはモジュールでなければなりません

  "downlevelIteration": true, // トラバーサーの実装をダウングレードします。ターゲット ソースが es3/5 の場合、トラバーサーの実装はダウングレードされます

  "strict": true, // すべての厳密な型チェックを有効にします

  "jsx": "preserve", // jsx 形式を指定

  "alwaysStrict": true, // コードに「use strict」を挿入します

  "noImplicitAny": true, // 暗黙の型を許可しない

  "strictNullChecks": true, // null および undefined を他の型の変数に割り当てることはできません

  "strictFunctionTypes": true, // 関数パラメーターの双方向共分散を許可しない

  "strictPropertyInitialization": true, // クラスのインスタンス プロパティを初期化する必要があります

  "strictBindCallApply": true, // 厳密なバインド/呼び出し/適用チェック

  "noImplicitThis": true, // これが暗黙の any 型を持つことを許可しません

  "noUnusedLocals": true, // 宣言された未使用のローカル変数のみをチェックします (プロンプトのみでエラーなし)

  "noUnusedParameters": true, // 未使用の関数パラメーターをチェックします (プロンプトのみでエラーはありません)

  "noFallthroughCasesInSwitch": true, // switch ステートメントが通過しないようにする (つまり、break ステートメントがない場合は実行されません)

  "noImplicitReturns": true, //各ブランチには戻り値があります

  "esModuleInterop": true, // export=export を許可、import from によってインポート

  "allowUmdGlobalAccess": true, // モジュール内のグローバル変数として umd モジュールへのアクセスを許可します

  "moduleResolution": "node", // モジュール解決戦略、ts はデフォルトでノード解決戦略、つまり相対インポートを使用します

  "baseUrl": "./", // 非相対モジュールのベース アドレスを解決します。デフォルトは現在のディレクトリです

  "paths": { // baseUrl を基準としたパス マッピング

    // jq を使用するときにデフォルト バージョンを使用したくないが、手動でバージョンを指定する必要がある場合は、次のように構成できます。

    "jquery": ["node_modules/jquery/dist/jquery.min.js"]

  }、

  "rootDirs": ["src","out"], // ランタイム用の仮想ディレクトリの下に複数のディレクトリを配置します。つまり、コンパイル後にインポートされたファイルの場所が変更される可能性があり、仮想 src を設定することもでき、out は同じディレクトリ、パスを変更する必要はなく、エラーは報告されません

  "listEmittedFiles": true, // 出力ファイルを印刷する

  "listFiles": true// コンパイル済みファイル (参照されている宣言ファイルを含む) を出力します

}

おすすめ

転載: blog.csdn.net/qq_44476091/article/details/125635093