鍍金池/ 教程/ HTML/ tsconfig.json
初始化項目結(jié)構(gòu)
聯(lián)合類型
介紹
介紹
介紹
編譯選項
TypeScript 1.6
介紹
介紹
發(fā)展路線圖
介紹
在MSBuild里使用編譯選項
可迭代性
TypeScript 1.3
介紹
介紹
TypeScript 1.1
變量聲明
即將到來的Angular 2框架是使用TypeScript開發(fā)的。 因此Angular和TypeScript一起使用非常簡單方便
tsconfig.json
介紹
介紹
介紹
在MSBuild里使用編譯選項
使用TypeScript的每日構(gòu)建版本
新建工程
枚舉
三斜線指令
結(jié)合ASP.NET v5使用TypeScript
TypeScript里的this
介紹
TypeScript 1.4
編碼規(guī)范
介紹
模塊解析
ASP.NET 4
架構(gòu)概述
介紹
介紹
ASP.NET Core
TypeScript 1.8
介紹
介紹
創(chuàng)建簡單工程
TypeScript 1.7
TypeScript 1.5
NPM包的類型
支持TypeScript的編輯器

tsconfig.json

概述

如果一個目錄下存在一個tsconfig.json文件,那么它意味著這個目錄是TypeScript項目的根目錄。 tsconfig.json文件中指定了用來編譯這個項目的根文件和編譯選項。 一個項目可以通過以下方式之一來編譯:

使用tsconfig.json

  • 不帶任何輸入文件的情況下調(diào)用tsc,編譯器會從當前目錄開始去查找tsconfig.json文件,逐級向上搜索父目錄。
  • 不帶任何輸入文件的情況下調(diào)用tsc,且使用命令行參數(shù)--project(或-p)指定一個包含tsconfig.json文件的目錄。

當命令行上指定了輸入文件時,tsconfig.json文件會被忽略。

示例

tsconfig.json示例文件:

  • 使用"files"屬性
{
    "compilerOptions": {
        "module": "commonjs",
        "noImplicitAny": true,
        "removeComments": true,
        "preserveConstEnums": true,
        "outFile": "../../built/local/tsc.js",
        "sourceMap": true
    },
    "files": [
        "core.ts",
        "sys.ts",
        "types.ts",
        "scanner.ts",
        "parser.ts",
        "utilities.ts",
        "binder.ts",
        "checker.ts",
        "emitter.ts",
        "program.ts",
        "commandLineParser.ts",
        "tsc.ts",
        "diagnosticInformationMap.generated.ts"
    ]
}
  • 使用"exclude"屬性
{
    "compilerOptions": {
        "module": "commonjs",
        "noImplicitAny": true,
        "removeComments": true,
        "preserveConstEnums": true,
        "outFile": "../../built/local/tsc.js",
        "sourceMap": true
    },
    "exclude": [
        "node_modules",
        "wwwroot"
    ]
}

細節(jié)

"compilerOptions"可以被忽略,這時編譯器會使用默認值。在這里查看完整的[編譯器選項](./Compiler Options.md)列表。

如果tsconfig.json沒有提供"files"屬性,編譯器會默認包含當前目錄及子目錄下的所有TypeScript文件(*.ts*.tsx)。 如果提供了"files"屬性值,只有指定的文件會被編譯。

如果指定了"exclude"選項,編譯器會包含當前目錄及子目錄下的所有TypeScript文件(*.ts*.tsx),不包括這些指定要排除的文件。

"files"選項不能與"exclude"選項同時使用。如果同時指定了兩個選項的話,只有"files"會生效。

所有被"files"屬性里的文件所引用的文件同樣會被包含進來。 就好比,A.ts引用了B.ts,因此B.ts不能被排除,除非引用它的A.ts"exclude"列表中。

tsconfig.json可以是個空文件,那么編譯器則使用默認編譯選項,編譯當前目錄及其子目錄下的所有文件。

命令行上提供的編譯選項會覆蓋tsconfig.json文件中的對應(yīng)選項。

compileOnSave

在最頂層設(shè)置compileOnSave標記,可以讓IDE在保存文件的時候根據(jù)tsconfig.json重新生成文件。

{
    "compileOnSave": true,
    "compilerOptions": {
        "noImplicitAny" : true
    }
}

要想支持這個特性需要Visual Studio 2015, TypeScript1.8.4以上并且安裝atom-typescript插件。

模式

到這里查看模式: http://json.schemastore.org/tsconfig.

上一篇:介紹下一篇:介紹