tsconfig,常用配置
/*
https://www.bilibili.com/video/BV1pf4y1U7ij?p=27&spm_id_from=pageDriver&vd_source=fd5425bfe2e6c3a48b1d00c8b84349a2
*/
{
/* 外层主要是编译目录,输出目录的配置 */
//只编译该数组里的文件
"files": [
"src/a.ts"
],
//只编译编译src下二级目录的文件(支持通配符)
"include": [
"src/*/*"
],
//不编译node_modules下的
"exclude": [
"node_modules"
],
//继承,把基础的配置抽离出来,写在另一个json中。1. 分成几个写文件更清新 2. 下次就不用再写了 3.继承里的会覆盖当前的
"extends": "./tsconfig.base.json",
/* 这里面主要是编译时,对文件的操作设置 */
"compilerOptions": {
"incremental": true, // 增量编译,编译后会成生一个文件,记录这次编译的情况,下次编译就会和这次的对比,编译差异部分,这样可以避免重复编译,加快编译效率
"tsBuildInfoFile": "./tsbuildinfo", // 上面生成的文件的保存目录和名字,如果不设置,就会生成在根目录下,起一个默认名字
"diagnostics": true, // 打印诊断信息,编译完会打印编译用的时间。incremental有没有效,看这里也能看出来
"target": "ES5", //使用的js版本
"module": "commonjs", //编译生成的代码使用的标准
"lib": ["es2019"], //需要引入的库,如果要操作dom,那就要引入”dom“库,不然querySelector这些都不能用,要用数组的flat(es2019新增的语法),那就要引入”es2019“
"allowJs": true, //允许编译js,jsx文件
"checkJs": true, //检查js文件,允许在js文件中报错
"outDir": "./out", //要允许编译js,一般都要配置该选项,因为编译后后的js和原js同名,会冲突,不像a.ts和编译后的a.js不会冲突
"rootDir": "./src", //哪个目录下的js需要编译?默认是根目录下除了exclude,包含include的文件都要编译,这里可以再约束一下
"sourceMap": true, //每个文件生成sourcemap
"removeComments": true, //删除注释
"noEmit": true, //不生成文件,这个配置true了,ts就相当于不工作了
"noEmitOnError": true, //发生错误时,不生成文件
"downlevelIteration": true, //降级遍历器到es3,在es5中有concat这些函数,如果连es5都不支持,那就要降级,用更基础的方式实现遍历
"strict": true, //严格检查
"alwaysStrict": true, //允许在文件中注入 "use strict"
}
}
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
· 字符编码:从基础到乱码解决