ts编译简单常用配置记录

52 阅读2分钟

开启掘金成长之旅!这是我参与「掘金日新计划 · 12 月更文挑战」的第1天,点击查看活动详情

PS:已经更文多少天,N就写几。一定要写对文案,否则文章不计入在内;模板句子需要带超链接。

因为浏览器不能直接识别ts文件,所以我们写的ts文件需要编译成js再去运行

编译:tsc xxx.ts

由于每次修改都要手动转一次所以可以使用 tsc xxx.ts -w 来监听这个ts文件的改变自动编译 -w就是watch

但是每个ts文件都要输入一次,麻烦,所以我们在项目中直接使用tsc全部编译,但是有一个前提必须有tsconifig.json这个配置文件可以什么都不写但必须有,就可以执行tsc来编译项目中的所有ts文件,这个时候终端输入tsc -w就可以监视所有的ts文件变化自动编译为js文件了,(vscode是tsc -init )

tsconifig.json配置文件,以下为tsconifig.json常用配置

{

/*

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

'include' 用来指定哪些文件需要被编译,路径:两个**表示任意目录一个*表示任意文件

"exclude"不需要被编译,定义需要排除在外的目录,可选,默认值:["node.modulse,"bower_compoents,"jspm_packages"]

"extends"表示继承其他配置文件

"files"指定被编译的文件列表,只有需要编译的文件少时才会用到

"compilerOptions"编译器的选项

*/

"include":[

''./src/**/*'' ,

''./SSR/**/*''

],

"exclude":[

"./src/hello/**/*"

],

"extends":"./confing/base",

"files":["sys.ts","care.ts".....],

//编译选项配置

"compilerOptions":{

//target 用来指定编译为的Es的版本,值为"esnext"表示最新版本的Es

"target":'Es3'

//module 指定要使用的模块化规范 值为"esnext"表示最新版本的

"module":"Es2015"

//lib用来指定项目中要使用的库 一般默认就行

"lib":["esnext", "dom"]

//outDir 用来指定编译后的文件所在的目录

"outDir":"./xx"

//outFile 将代码合并为一个文件设置outFile后,所有的全局作用域中的代码会合并到同一个文件中

"outFile":"./xx/xx.js"

//allowJs 是否对js文件进行编译,默认是false

"allowJs":false

//checkJS 是否检查js代码是否符合语法规范,默认是false

"checkJS":false

//removeComments 是否移除注释,默认为false

"removeComments":true

//noEmit 不生成编译后的文件 默认为false

"noEmit":true

//strict 所有严格检查的总开关

"strict":false

//noEmitOnError 当有错误是不生产编译文件

"noEmitOnError":true

//alwaysStrict 用来设置编译后的文件是否使用严格模式,默认为false

"alwaysStrict":false

//noImplicitAny 不允许隐式的any类型

"noImplicitAny":true

//noImplicitThis 不允许不明确类型的this

"noImplicitThis":true

//noImplicitThis 严格的检查空值,比如使用的某个元素是否为null

"strictNullChecks":true

}

}