引入ts开发环境,tsconfig.json配置解析
浏览器认识js但不认识ts,ts编译之后是js文件,ts是可以在编码过程中提前锁定到编译后会报错的位置,对其进行修改,可以有效避免bug
1、终端命令tsc -v
检查项目是否安装tsc编译环境
2、未安装执行cnpm install -g typescript
(安装过cnpm)
3、编译单个文件tsc 文件名
,指定需要编译整个目录下的所有ts文件tsc -p 要编译的文件目录
(该目录下需要有tsconfig.json文件)
4、在当前项目根目录下终端执行tsc --init
创建tsconfig.json编译上下文配置文件(告诉ts需要编译的文件)
以下是常见的几个tsconfig.json的配置项
点击查看代码
{
"compilerOptions": {
"incremental": true, //ts编译器在第一次编译之后会生成一个存储编译信息的tsconfig.tsbuildinfo文件,第二次编译会在第一次的基础上进行增量编译,可以提高编译的速度
"lib":["DOM","ES2015","ScriptHost","ES2019.Array"], //ts需要引入的库,即声明文件es5默认引用dom、es5、scripthost,如需要使用es的高级版本特性,通常都是配置,如es8的数组新特性需要引入“ES2019.Array”
"target":"ES5", //目标语言的版本,像(ES2015,ES2016,......)
"module":"commonjs", //指定生成代码的模版标准,例如:node、amd、system、umd、es2015、es2020、ESNext
"noImplicitAny":true, //不允许隐式的any类型(在ts中没有指定类型,并且ts推断不出类型的时候就会出现隐式any类型)
"removeComments":true, //删除编译前的注释
"preserveConstEnums":true, //保留const 和 enum声明
"sourceMap":true, //生成目标文件的sourceMap文件
"allowJS":true, //允许编译器编译JS,JSX文件
"outDir":"./dist", //编译的目标路径
"tsBuildInfoFile":"./build" //增量编译后文件的存放位置
},
"files": [ //指定待编译文件
"./src/index.ts"
],
"include":[
"./src"
], //指定需要编译的目录文件
}
注意:第一次编译直接执行tsc
会生成增量编译tsconfig.tsbuildinfo文件,默认按照tsconfig.json文件的配置项进行编译
5、执行tsc -w
会对当前的ts文件进行修改监听,只要ts文件有修改,在保存时就会进行编译
6、ts文件编译后,终端显示Found 0 errors. Watching for file changes.才表示编译正常