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
	}
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/544816.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

股票开户佣金最低多少?万一!A股开户多少钱合适?

开户佣金 通常情况下,股票开户佣金只要在达成交易的前提才收手续的费用,即买入和卖出的时候。目前,国规定收取最高佣金的比例为千分之三。 也就是说,最高为成交金额的3%,一般都会小于这个比例。最低交易佣金是5元起&a…

mac中的VirtualBox不能分配USB设备到虚拟电脑

mac中的VirtualBox不能分配USB设备到虚拟电脑 检查工具-> 扩展包是否安装 Oracle_VM_VirtualBox_Extension_Pack-7.0.14.vbox-extpack检查usb设备是否打开 检查权限 允许VirtualBox访问:在“安全性与隐私”窗口中,选择“隐私”标签。 在左侧的列表中…

微信过期文件怎么恢复?四个高招助你轻松解决(2024新版)

“微信的文件未下载的情况下过期了,平时微信也没有登录在电脑上,之前也没有进行过数据备份,如何找回这个文件啊!!感谢回答!” “急求,当时忘记点击下载,现在急用微信文件下载不了&a…

Go gin框架(详细版)

目录 0. 为什么会有Go 1. 环境搭建 2. 单-请求&&返回-样例 3. RESTful API 3.1 首先什么是RESTful API 3.2 Gin框架支持RESTful API的开发 4. 返回前端代码 go.main index.html 5. 添加静态文件 main.go 改动的地方 index.html 改动的地方 style.css 改动…

【Linux网络编程】TCP协议

TCP协议 1.TCP协议段格式4位首位长度序号和确认序号16位窗口大小6个标志位 2.确认应答机制3.超时重传机制4.连接管理机制如何理解连接如何理解三次握手如何理解四次挥手 5.流量控制6.滑动窗口7.拥塞控制8.延迟应答9.捎带应答10.面向字节流11.粘包问题12.TCP异常情况13.TCP小结1…

通讯录的实现(单链表版本)

我们首先要知道通讯录的实现是基于单链表的基础上的,所以我们首先要搞懂单链表。(注意:今天的代码量较多),但这不是阻挡我们前进的脚步,冲冲冲!!! 单链表的简要概述 我们…

剖析 SPI 在 Spring 中的应用

一、概述 SPI(Service Provider Interface),是Java内置的一种服务提供发现机制,可以用来提高框架的扩展性,主要用于框架的开发中,比如Dubbo,不同框架中实现略有差异,但核心机制相同…

构建第一个ArkTS应用之stateStyles:多态样式

Styles和Extend仅仅应用于静态页面的样式复用,stateStyles可以依据组件的内部状态的不同,快速设置不同样式。这就是我们本章要介绍的内容stateStyles(又称为:多态样式)。 概述 stateStyles是属性方法,可以…

如何发布自己的Python库?

Python包发布 1、背景概述2、操作指南 1、背景概述 为什么我们要发布自己的Python库?如果你想让你的Python代码,通过pip install xxx的方式供所有人下载,那就需要将代码上传到PyPi上,这样才能让所有人使用 那么,如何发…

【最新整理】3ds Max 大佬都在用的10款爆火插件推荐!

在3D建模和渲染领域,熟悉使用各种插件已经成为了大佬们的标配,而3ds Max作为最受欢迎的三维建模软件之一,更是有着丰富的插件资源。今天,小编将为大家盘点一下最新整理的10款爆火插件,这些插件不仅能够提升你的工作效率…

集合体系java

Collection:单列集合:每个元素只包含一个值 Collection集合存储的是地址 Collection的三种遍历方法如下 //迭代器是用来遍历集合的专用方式(数组没有迭代器),在java中迭代器的代表是Iterator //boolean hasNext():询问当前位置…

10万字208道Java经典面试题总结(2024修订版)- SSM篇

🍅 作者简介:哪吒,CSDN2021博客之星亚军🏆、新星计划导师✌、博客专家💪 🍅 哪吒多年工作总结:Java学习路线总结,搬砖工逆袭Java架构师 🍅 技术交流:定期更新…

(三)C++自制植物大战僵尸游戏项目结构说明

植物大战僵尸游戏开发教程专栏地址http://t.csdnimg.cn/ErelL 一、项目结构 打开项目后,在解决方案管理器中有五个项目,分别是libbox2d、libcocos2d、librecast、libSpine、PlantsVsZombies五个项目,除PlantsVsZombies外,其他四个…

map与set

set使用 set在我们就是我们前面学习的k模型,它可以用来比对数据,增删查的时间复杂度都是O(logn)效率非常高,由于它底层的原因,它也可以实现排序,通过中序遍历可以输出我们的有序的数据&#xff…

#新版Onenet云平台使用(ESP8266 AT指令上报数据以及公网MQTT服务器连接测试)

1.上云方式:MQTT 参考: 新版ONENET物联网开放平台ATMQTT指令连接_at指令连接onenet的mqtt-CSDN博客https://blog.csdn.net/lilbye/article/details/131770196 ESP8266-01s入门:AT指令讲解、上云与MQTT通信教程-物联沃-IOTWORD物联网https:…

软考 系统架构设计师系列知识点之大数据设计理论与实践(5)

接前一篇文章:软考 系统架构设计师系列知识点之大数据设计理论与实践(4) 所属章节: 第19章. 大数据架构设计理论与实践 第3节 Lambda架构 19.3.1 Lambda架构对大数据处理系统的理解 Lambda架构由Storm的作者Nathan Marz提出&…

SpringCloud实用篇(四)——Nacos

Nacos nacos官方网站:https://nacos.io/ nacos是阿里巴巴的产品,现在是springcloud的一个组件,相比于eureka的功能更加丰富,在国内备受欢迎 nacos的安装 下载地址:https://github.com/alibaba/nacos/releases/ 启动…

vscode远程连接centos

文章目录 vacode连接linux1. 安装插件2. 查看配置3. 打开ssh4. 远程连接 vacode连接linux 1. 安装插件 在扩展栏搜索remote ,找到Remote Development插件,进行安装: 2. 查看配置 打开自己的linux终端,输入ifconfig,…

BackTrader 中文文档(九)

原文:www.backtrader.com/ 期货和现货补偿 原文:www.backtrader.com/docu/order-creation-execution/futurespot/future-vs-spot/ 发布1.9.32.116添加了对在社区中提出的一个有趣用例的支持。 通过未来开始交易,其中包括实物交割 让指标告诉…

怎么做预约小程序_探索我们的全新预约小程序

在繁忙的现代生活中,无论是想预约一次美容护理,还是预定一家心仪的餐厅,亦或是安排一次专业的咨询服务,我们都希望能够在最短的时间内完成这些操作,节省时间和精力。如今,一款全新的预约小程序应运而生&…