安装与运行 👌
安装
建议全局安装
npm i -g typescript
安装好之后,就可以直接使用 tsc 来编译 ts 文件了
编译
我们现在可以创建一个 ts 文件,并将他编译成 js 文件,比如下面简单的代码
let str: string = "hello";
但是,就是这么简单的代码,编译之后却会报错。
不用担心,这个错误,并不是我们的错误,原因是默认情况下,TS 会做出下面的几种假设:
- 假设当前环境在 DOM 环境中
- 如果代码中没有模块化语句,默认代码是全局执行的,所以变量就是全局变量(TS 默认编译目标代码的是 ES3)
要最简单的解决,就是用模块化或者加上 TS 的配置文件,或者tsc
命令行的选项参数
tsconfig.json 配置文件
如果项目中指定了tsconfig.json
文件,运行tsc
不需要再指定文件路径地址
{
"compilerOptions": {
"target": "ES2017", // 编译目标版本
"lib": ["ES2017", "DOM", "DOM.Iterable"], // 需要引用的类型库
"outDir": "./dist" // 指定输出目录,如果未指定和对应的.ts文件同目录
},
"include": ["src/**/*.ts"] // 指定需要编译的文件或目录
}
使用第三库简化流程
ts-node: 将 ts 代码在内存中完成编译,同时完成运行(不会生成编辑后的文件)
安装:
npm i -g ts-node
运行:
ts-node src/index.ts
为了能够编写的时候同步运行编译,我们可以使用nodemon第三方库来检测文件变化
安装:
全局安装
npm i -g nodemon
运行:
nodemon --exec ts-node src/index.ts
或者本地安装
npm i -D nodemon
运行:
npm nodemon --exec ts-node src/index.ts
当然,我们可以像之前一样,将这个代码放入到package.json
的 scripts 属性中
"scripts": {
"start": "nodemon --exec ts-node src/index.ts"
},