{ /* tsconfig.json是ts编译器的配置文件,ts编译器可以根据他的信息来对代码进行编译 1. include 用来指定哪些Ts文件需要被编译, **表示任意目录, *表示任意文件 2. exclude 用来指定哪些Ts文件不需要被编译, **表示任意目录, *表示任意文件 默认值:["node_modules", "bower_components", "jspm_packages"] */ "include": [ "./src/**/*" ], "exclude": [ "./src/hello/**/*" ], /* compilerOptions 编译器选项 */ "compilerOptions": { // target 用来指定Ts被编译的为的ES的版本 ESNext表示当前最新版本的ES "target": "ES6", // module 来指定要是用的模块化规范 // 可选值'none', 'commonjs', 'amd', 'system', 'umd', 'es6', 'es2015', 'es2020', 'es2022', 'esnext', 'node16', 'nodenext' // 'amd', 'system' 用来合并多个模块 "module": "ES6", // lib用来指定项目中要使用的库 // "lib": ["es6","dom"] //lib可选值如下: // 'es5', 'es6', 'es2015', 'es7', 'es2016', 'es2017', 'es2018', 'es2019', 'es2020', 'es2021', 'es2022', 'esnext', 'dom', 'dom.iterable', 'webwo // rker', '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', 'es // 2018.promise', 'es2018.regexp', 'es2019.array', 'es2019.object', 'es2019.string', 'es2019.symbol', 'es2019.intl', 'es2020.bigint', 'es2020.date', 'es2020.promise', 'es2020.sharedmemory', 'es2020.string', 'es2020.s // ymbol.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' // outDir 用来指定编译后文件所在目录 "outDir": "./dist", // outFile 将代码合并为一个文件 // 设置outFile后,所有的全局作用域的代码会合并到同一个文件中 // "outFile": "./dist/app.js" // 是否对js进行编译,默认为false 不编译 "allowJs": true, // 是否检查js代码是否符合语法规范 默认false 不检查 "checkJs": false, // 是否移除注释 默认为false 不移除 "removeComments": true, // 不生成编译后的文件 "noEmit": false, // 当有错误时,不生成编译后的文件 "noEmitOnError": false, // 所有严格模式的总开关 "strict": true, // 用来设置编译后的文件是否使用严格模式,默认false "alwaysStrict": true, // 不允许隐式的any类型 "noImplicitAny": true, // 不允许不明确类型的this "noImplicitThis": true, // 严格的检查空值 "strictNullChecks": true } }