tsconfig.json 文件的生成
tsconfig.json 文件是由 tsc --init 命令生成的。
直接運行 tsc 命令 tsconfig.json 文件才會生效,要是指定文件比如 tsc dome.ts ,tsconfig.json 文件不會生效。但是 ts-node 指定文件是遵循 tsconfig.json 文件的。
include、exclude 和 files 配置項
// 編譯哪些文件
{
"include":["demo.ts"],
"compilerOptions": {
//any something
//........
}
}
// 不編譯哪些文件
{
"exclude":["demo2.ts"],
"compilerOptions": {
//any something
//........
}
}
// 和 include 差不多,都是編譯哪些文件
{
"files":["demo.ts"],
"compilerOptions": {
//any something
//........
}
}
compilerOptions 配置項
不用特意去死記,因為並不常用,用的時候查 API 就可以了:編譯選項詳解
幾種常用的編譯選項:
| 配置項 | 作用 |
|---|---|
removeComments |
編譯出來的js文件是否移除注釋,為 true,就是在js中不顯示注釋 |
strict |
按照 TypeScript 最嚴格的規范來寫代碼 |
"outDir": "./build" |
編譯輸出的目錄 |
"rootDir": "./src" |
ts 文件目錄 |
"allowJs":true"target":'es5' |
編譯 ES6 語法到 ES5 語法 |
sourceMap |
Source map 就是一個信息文件,里面儲存着位置信息。也就是說,轉換后的代碼的每一個位置,所對應的轉換前的位置 |
"noUnusedLocals":true |
編譯時發現未使用的局部變量,會報錯 |
"noUnusedParameters":true |
編譯時發現未使用的方法,會報錯 |
以下是 strict 為 false 或不配置 strict 配置項時,可以配置的配置項:
| 配置項 | 作用 |
|---|---|
noImplicitAny |
值為 false 時,允許注解類型 any 不用特意表明 |
strictNullChecks |
值為 false 時,不強制檢查 NULL 類型 |
參考:
技術胖——TypeScript從入門到精通(15. 配置文件-初識 tsconfig.json)
技術胖——TypeScript從入門到精通(16. 配置文件-初識 compilerOptions配置項)
技術胖——TypeScript從入門到精通(17. 配置文件-compilerOptions 配置內容詳解)
compilerOptions 編譯選項詳解
