使用tsconfig.json
- 不带任何输入文件的情况下调用
tsc,编译器会从当前目录开始去查找tsconfig.json文件,逐级向上搜索父目录。 - 不带任何输入文件的情况下调用
tsc,且使用命令行参数--project(或-p)指定一个包含tsconfig.json文件的目录。
配置项
compilerOptions : 编译配置
files : 指定一个包含相对或绝对文件路径的列表
{
"compilerOptions": {
"module": "commonjs",
"noImplicitAny": true,
"removeComments": true,
"preserveConstEnums": true,
"sourceMap": true
},
"files": [
"core.ts",
"sys.ts",
"types.ts",
]
}
include : 包含的文件,指定一个文件glob匹配模式列表
exclude : 排除的文件,指定一个文件glob匹配模式列表
支持的glob通配符有:
*匹配0或多个字符(不包括目录分隔符)?匹配一个任意字符(不包括目录分隔符)**/递归匹配任意子目录
{
"compilerOptions": {
"module": "system",
"noImplicitAny": true,
"removeComments": true,
"preserveConstEnums": true,
"outFile": "../../built/local/tsc.js",
"sourceMap": true
},
"include": [
"src/**/*"
],
"exclude": [
"node_modules",
"**/*.spec.ts"
]
}
typeRoots :默认所有可见的”@types“包会在编译过程中被包含进来,指定了typeRoots,只有typeRoots下面的包才会被包含进来
{
"compilerOptions": {
"typeRoots" : ["./typings"]
}
}
types : 指定了types,只有被列出来的包才会被包含进来
{
"compilerOptions": {
"types" : ["node", "lodash", "express"]
}
}
extends继承配置
{
"extends": "./configs/base",
"files": [
"main.ts",
"supplemental.ts"
]
}