本文分享笔者使用 TypeScript 编写运行 Node 应用的一些些经验。基本只须要 3 分钟,便可实现 node + ts 的开发环境配置。html
好比笔者要用 ts 写个 socket Node 应用。先用 tree 命令看项目结构。node
$ tree -L 1 socket/
socket/
├── main.ts
├── node_modules
├── package.json
├── static
└── tsconfig.json
2 directories, 3 files
复制代码
配置 ts 配置 tsconfig。固然下述配置能够进行调整,须要留意的是 moduleResolution 配置来指定 node 端的模块寻址算法。能够参考官网文档 Module Resolution。git
{
"compilerOptions": {
"target": "es6",
"module": "commonjs",
"moduleResolution": "node",
"downlevelIteration": true,
"allowSyntheticDefaultImports": true,
"esModuleInterop": true
}
}
复制代码
在项目中安装 typescript ts-node-dev 两个开发依赖。es6
$ yarn add typescript ts-node-dev -D
复制代码
安装完成后,而后配置 npm 脚本,好比 npm start 命令:github
{
"scripts": {
"start": "tsnd -P ./tsconfig.json --respawn ./main.ts"
}
}
复制代码
tsnd 是 ts-node-dev 命令的缩写。上述命令中,只进行了两个配置,-P 表明着配置 tsconfig 的路径,是 --project 的缩写。--respawn 即为观察文件变动以从新运行脚本。更多配置参数能够查看官网文档 Github | ts-node-dev。平时笔者大约只须要上述两个配置。算法
同时记得安装 node.js 类型声明包,这样才能够对 node.js 提供 API 方法有默认的类型提示和检查。typescript
$ yarn add @types/node -D
复制代码
运行开发环境。npm
$ npm start
复制代码
以上简单几步便可。json
生产环境其实就很简单了,基本上只须要使用 tsc 进行编译成 js 便可。以下:bash
{
"scripts": {
"build": "tsc --project ./"
}
}
复制代码
$ npm build
复制代码
以上命令会寻找当前目录下的 tsconfig,按照此配置编译项目的 ts 文件。
更多 tsc 命令请参考 Compiler Options
毕竟你该有的烦恼,社区基本上都有解决办法。接下来只须要尽情享受开发便可。笔者日常基本上依靠上述配置,编写 e2e 测试、Node 应用、以及学习。十分便利。以上简单的教程,但愿也能帮到你们。