由于開發(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ù)。