{
// include 用来指定哪些ts文件需要被编译
"include": [
// src 目录下的所有ts文件
// ** 任意目录
// * 任意文件
"./src/**/*"
],
// exclude 不需要被编译的文件
// 默认值 ["node_modules","bower_components","jspm_packages"]
// "exclude": [
// "./src/hello/**/*"
// ]
// compilerOptions 编译器的选项
"compilerOptions": {
// target 指定ts被编译成什么js版本,可选值: 'es3', 'es5', 'es6', 'es2015', 'es2016', 'es2017', 'es2018', 'es2019', 'es2020', 'es2021', 'es2022', 'esnext'
"target": "es3",
// module 指定类型使用的模块化的规范,可选值:'none', 'commonjs', 'amd', 'system', 'umd', 'es6', 'es2015', 'es2020', 'es2022', 'esnext', 'node16', 'nodenext'
"module": "amd",
// lib 指定项目中要使用的库,可选值:'es5', 'es6', 'es2015', 'es7', 'es2016', 'es2017', 'es2018', 'es2019', 'es2020', 'es2021', 'es2022', 'esnext', 'dom', 'dom.iterable', 'webworker', 'webworker.importscripts', 'webworker.iterable', 'scripthost', 'es2015.core', 'es2015.collection', 'es2015.generator', 'es2015.iterable', 'es2015.promise', 'es2015.proxy', 'es2015.reflect', 'es2015.symbol', 'es2015.symbol.wellknown', 'es2016.array.include', 'es2017.object', 'es2017.sharedmemory', 'es2017.string', 'es2017.intl', 'es2017.typedarrays', 'es2018.asyncgenerator', 'es2018.asynciterable', 'es2018.intl', 'es2018.promise', 'es2018.regexp', 'es2019.array', 'es2019.object', 'es2019.string', 'es2019.symbol', 'es2019.intl', 'es2020.bigint', 'es2020.date', 'es2020.promise', 'es2020.sharedmemory', 'es2020.string', 'es2020.symbol.wellknown', 'es2020.intl', 'es2020.number', 'es2021.promise', 'es2021.string', 'es2021.weakref', 'es2021.intl', 'es2022.array', 'es2022.error', 'es2022.intl', 'es2022.object', 'es2022.sharedmemory', 'es2022.string', 'esnext.array', 'esnext.symbol', 'esnext.asynciterable', 'esnext.intl', 'esnext.bigint', 'esnext.string', 'esnext.promise', 'esnext.weakref'
"lib": [
"es6",
"dom"
],
// outDir 指定编译后文件的所在目录
"outDir": "./dist",
// outFile 用来将代码合并到一个文件中
"outFile": "./dist/app.js",
// allowJs 是否对js文件进行编译
"allowJs": true,
// checkJs 是否检查js代码是否符合代码规范,和allowJs同步出现,要么都用true,要么都用false
"checkJs": true,
// removeComments 是否移除注释
"removeComments": true,
// noEmit 不生成编译后的文件
"noEmit": false,
// noEmitOnError 当有错误时不生成编译后的文件
"noEmitOnError": true,
// strict所有严格检查模式的总开关,开启之后下面的都不用再单独设置
"strict": true,
// alwaysStrict 用来设置编译后的文件是否使用严格模式,默认false
"alwaysStrict": true,
// noImplicitAny 不允许隐式的any类型
"noImplicitAny": true,
// noImplicitThis 不允许不明确类型的this
"noImplicitThis": true,
// strictNullChecks 严格的检查空值
"strictNullChecks": true,
}
}