配置文件-初识 tsconfig.json
生成 tsconfig.json 文件
这个文件是通过tsc --init
命令生成的,在桌面上新建一个文件夹TsDemo,然后打开VSCode,把文件托到编辑器中,然后打开终端Terminal,输入tsc --init。
输入完成后,就会出现tsconfig.json文件,你可以打开简单的看一下,不过此时你可能看不懂。
其实它就是用来配置如何对ts文件进行编译的,我们都叫它 typescript 的编译配置文件。
如果此时你的tsc执行不了,很有可能是你没有全局安装 TypeScript,可以全局安装一下。
让 tsconfig.json 文件生效
你现在可以在文件夹跟目录建立一个demo.ts文件,然后编写一些最简单的代码,代码如下:
const person: string = "jspang";
这时候我们不在使用ts-node直接执行了,需要用tsc demo.ts进行编译,编译后会得到demo.js文件。 生成的代码如下:
var person = "jspang";
这时候好像一切都是正常的,但是我要告诉你的真相是tsconfig.json这个编译配置文件并没有生效。
此时我们打开tsconfig.json
文件,找到complilerOptions
属性下的removeComments:true
选项,把注释去掉。
这个配置项的意思是,编译时不显示注释,也就是编译出来的js文件不显示注释内容。
现在你在文件中加入一些注释,比如:
// I love jspang
const person: string = "jspang";
这时候再运行编译代码tsc demo.ts,编译后打开demo.js文件,你会发现注释依然存在,说明tsconfig.json文件没有起作用。
如果要想编译配置文件起作用,我们可以直接运行tsc命令,这时候tsconfig.json才起作用,可以看到生成的js文件已经不带注释了。
include 、exclude 和 files
那现在又出现问题了,如果我们的跟目录下有多个ts文件,我们却只想编译其中的一个文件时,如何作?
我们在项目根目录,新建一个文件demo2.ts文件,然后也写一段最简单的 ts 代码。
const person2: string = "jspang.com";
如果这时候我们在终端里运行tsc,虽然tsconfig.json生效了,但是两个文件都被我们编译了。这不是你想要的结果,我们可以用三种办法解决这个问题。
第一种:使用 include 配置
include属性是用来指定要编译的文件的,比如现在我们只编译demo.ts文件,而不编译demo2.ts文件,就可以这样写。
写配置文件时有个坑需要注意,就是配置文件不支持单引号,所以里边都要使用双引号。
{
<