如何使用npm命令编译打字稿?

那么我只是想知道是否有任何命令将直接编译打印脚本代码并获得输出。 现在,我正在做的是,每当我在文件中进行更改时,我都必须重新运行命令来编译它

npm开始

这启动浏览器,然后我必须停止执行使用CTRL + C,然后我必须使用npm命令运行该文件

节点文件名

看到输出。

所以我想知道的是,是否有任何npm命令将编译.ts文件,并看到我在文件中所做的更改,而我运行该文件使用

节点文件名

命令

您可以使用--watch参数启动tsc命令( --watch编译器)。

这是一个想法:

  • 使用tsconfig.json文件configuration打字稿
  • 运行tsc --watch ,所以每次更改一个.ts文件时, tsc都会编译它并生成输出(假设你configuration了./dist来将输出放在./dist文件夹中)
  • 使用nodemon监视nodemon中的文件./dist已更改,是否需要重新启动服务器。

这里有一些脚本(放在package.json )可以帮助你做到这一点(你将需要安装以下模块npm install --save typescript nodemon npm-run-all rimraf

 "scripts": { "clean": "rimraf dist", "start": "npm-run-all clean --parallel watch:build watch:server --print-label", "watch:build": "tsc --watch", "watch:server": "nodemon './dist/index.js' --watch './dist'" } 

那么你只需要在terminal中运行npm start

这是基于@ThomasThiebaud提出的解决scheme。 我不得不稍微修改一下,以确保在nodemon尝试启动服务器之前,这些文件是在dist/中构build的。

 "scripts": { "clean": "rimraf dist", "build": "tsc", "watch:build": "tsc --watch", "watch:server": "nodemon './dist/index.js' --watch './dist'", "start": "npm-run-all clean build --parallel watch:build watch:server --print-label" }, 

你仍然需要运行npm start来启动整个事情。