tsconfig.json配置項(xiàng)詳解

由于開發(fā)包含ts的項(xiàng)目經(jīng)常要配置tsconfig.json,所以自己梳理了一份tsconfig.json文件;
里面包含了一些常用的tsconfig選項(xiàng)以及注解:
{
  "compilerOptions": {
    "allowUnreachableCode": true, // 不報(bào)告執(zhí)行不到的代碼錯(cuò)誤。
    "allowUnusedLabels": false, // 不報(bào)告未使用的標(biāo)簽錯(cuò)誤
    "alwaysStrict": false, // 以嚴(yán)格模式解析并為每個(gè)源文件生成 "use strict"語句
    "baseUrl": ".", // 工作根目錄
    "experimentalDecorators": true, // 啟用實(shí)驗(yàn)性的ES裝飾器
    "jsx": "react", // 在 .tsx文件里支持JSX
    "sourceMap": true, // 是否生成map文件
    "module": "commonjs", // 指定生成哪個(gè)模塊系統(tǒng)代碼
    "noImplicitAny": false, // 是否默認(rèn)禁用 any
    "removeComments": true, // 是否移除注釋
    "types": [ //指定引入的類型聲明文件,默認(rèn)是自動引入所有聲明文件,一旦指定該選項(xiàng),則會禁用自動引入,改為只引入指定的類型聲明文件,如果指定空數(shù)組[]則不引用任何文件
      "node", // 引入 node 的類型聲明
    ],
    "paths": { // 指定模塊的路徑,和baseUrl有關(guān)聯(lián),和webpack中resolve.alias配置一樣
      "src": [ //指定后可以在文件之直接 import * from 'src';
        "./src"
      ],
    },
    "target": "ESNext", // 編譯的目標(biāo)是什么版本的
    "outDir": "./dist", // 輸出目錄
    "declaration": true, // 是否自動創(chuàng)建類型聲明文件
    "declarationDir": "./lib", // 類型聲明文件的輸出目錄
    "allowJs": true, // 允許編譯javascript文件。
    "lib": [ // 編譯過程中需要引入的庫文件的列表
      "es5",
      "es2015",
      "es2016",
      "es2017",
      "es2018",
      "dom"
    ]
  },
  // 指定一個(gè)匹配列表(屬于自動指定該路徑下的所有ts相關(guān)文件)
  "include": [
    "src/**/*"
  ],
  // 指定一個(gè)排除列表(include的反向操作)
  "exclude": [
    "demo.ts"
  ],
  // 指定哪些文件使用該配置(屬于手動一個(gè)個(gè)指定文件)
  "files": [
    "demo.ts"
  ]
}

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容