当前位置: 首页 > news >正文

tsconfig.json文件常用配置

最近在学ts,因为tsconfig的配置实在太多啦,所以写此文章用作记录,也作分享

作用?

tsconfig.jsono是ts编译器的配置文件,ts编译器可以根据它的信息来对代码进行编译

初始化一个tsconfig文件

tsc -init

在这里插入图片描述
在这里插入图片描述

配置参数解释

include

用来指定哪些ts文件需要被编译

//tsconfig.json
{"include":["./src/**/*"]
}

以上代码表示,只有src下的所有文件(**)的所有目录(*)需要被编译

exclude

用来指定不需要被编译的ts文件,默认值:【“node_modules”,“bower_components”,“jspm_packages”】

//tsconfig.json
"exclude":["./src/hello/**/*"]

以上代码表示src下的所有文件的所有目录都不需要被编译

extends

定义要继承的配置文件(比如有两个tsconfig.json文件A、B,A可以不用自己配置,而去继承B的)

files

指定被编译的文件目录,和include有点像,只不过files是把小目录全部列出来了

//tsconfig.json
files:["core.ts","sys.ts","types.ts"]

compilerOptions

  • target
    用来指定ts要被编译的js版本,可选值:‘es3’, ‘es5’, ‘es6’, ‘es2015’, ‘es2016’, ‘es2017’, ‘es2018’, ‘es2019’, ‘es2020’, ‘es2021’, ‘es2022’, ‘esnext’
//tsconfig.json
{compilerOptions:{target:"es2020"}
}
  • lib
    指定要用到的库,例如:在js文件中用了document.getElementById(),就必须引入dom
//tsconfig.json
{compilerOptions:{lib:["dom"]}
}
  • moodule
    指定模块化规范的类型
//tsconfig.json
{compilerOptions:{module:"commonjs"}
}
  • rootDir
    用来指定编译的入口文件,即特指编译哪个文件里的ts
//tsconfig.json
{compilerOptions:{"rootDir": "./src"}
}

在这里插入图片描述
以上json文件用指定,只编译src下的ts文件

  • outDir
    用于指定被编译后的生成的js文件放在何处
//tsconfig.json
{compilerOptions:{"outDir": "./dist"}
}

在这里插入图片描述
以上配置表明被编译后的js文件放在dist文件夹中

  • outFile
    将编译后的代码放入同一文件
//tsconfig.json
{compilerOptions:{"outFile": "./all.js"}
}

以上配置表明,将编译后形成的js代码合并到all.js当中

  • removeComments
//tsconfig.json
{compilerOptions:{"removeComments": true}
}

编译后移除注释

  • noEmit
    不生成编译后的文件
//tsconfig.json
{compilerOptions:{"noEmit": true}
}
  • noEmitOnError
    有错误时,不生成编译后文件
//tsconfig.json
{compilerOptions:{"noEmitOnError": true}
}
  • strict
    所有严格检查的总开关
//tsconfig.json
{compilerOptions:{"strict": true}
}
  • allowJs
    是否对js文件进行编译
//tsconfig.json
{compilerOptions:{"allowJs": true}
}
  • checkJs
    是否检测js代码是否符合语法规范(把js当ts语法检查)
//tsconfig.json
{compilerOptions:{"checkJs": true}
}
http://www.lryc.cn/news/338986.html

相关文章:

  • 【Linux】tcpdump P1 - 网络过滤选项
  • 网络篇04 | 应用层 mqtt(物联网)
  • Transformer模型-decoder解码器,target mask目标掩码的简明介绍
  • All in One:Prometheus 多实例数据统一管理最佳实践
  • mysql报错-mysql服务启动停止后,某些服务在未由其他服务或程序使用时将自动停止和数据恢复
  • Java开发从入门到精通(二十):Java的面向对象编程OOP:File文件操作的增删改查
  • 10.list的模拟实现(普通迭代器和const迭代器的类模板)
  • 【电控笔记5】电流环速度环三环参数整定
  • AI克隆语音(基于GPT-SoVITS)
  • 小蚕爬树问题
  • 科研学习|科研软件——如何使用SmartPLS软件进行结构方程建模
  • 实用工具系列-ADB使用方式
  • 计算机网络书籍--《网络是怎样连接的》阅读笔记
  • antd+vue——datepicker日期控件——禁用日期功能
  • 技术分享 | Appium 用例录制
  • [蓝桥杯 2018 省 A] 付账问题
  • 设计模式|装饰器模式(Decorator Pattern)
  • 发作性睡病有性别差异吗?
  • ppt从零基础到高手【办公】
  • 文件上传下载
  • C++11 新特性:新增算法
  • c/c++普通for循环学习
  • 操作系统组成部分
  • 深入理解DES算法:原理、实现与应用
  • # 达梦sql查询 Sql 优化
  • Linux下SPI驱动:SPI设备驱动简介
  • 【简明图文教程】Node.js的下载、安装、环境配置及测试
  • 共模电感饱和与哪些参数有关?这些参数是如何影响共模电感的?
  • 儿童护眼台灯怎么选?五款必选的高口碑护眼台灯推荐
  • 前端小技巧之轮播图