Javascript 使用Typescript编译运行Nodemon?

Javascript 使用Typescript编译运行Nodemon?,javascript,node.js,typescript,visual-studio-code,nodemon,Javascript,Node.js,Typescript,Visual Studio Code,Nodemon,我希望在使用命令tsc保存的每个文件上编译我的typescript文件 如何将tsc命令与nodemon在build:live脚本中运行的命令相结合 “脚本”:{ “开始”:“npm运行构建:实时”, “build:live”:“nodemon--watch'*.ts'--exec'ts node'app.ts”, } 此脚本导致nodemon调用自身两次或三次: "build:live": "nodemon --watch '*.ts' --exec 'ts-node app.ts &

我希望在使用命令
tsc
保存的每个文件上编译我的typescript文件

如何将tsc命令与nodemon在
build:live
脚本中运行的命令相结合

“脚本”:{
“开始”:“npm运行构建:实时”,
“build:live”:“nodemon--watch'*.ts'--exec'ts node'app.ts”,
}
此脚本导致nodemon调用自身两次或三次:

"build:live": "nodemon --watch '*.ts' --exec 'ts-node app.ts & tsc'",

这看起来会实现您的目标:

"start": "tsc-watch --project . --outDir ./dist --onSuccess \"nodemon ./dist/bin/www.js\""

来源:

Nodemon现在将自动检测并运行
.ts
文件和
ts节点
。它实际上也将使用python和ruby运行
.py
.rb
文件,顺便说一句,您可以为其他人提供一个自定义的
--exec
。这是一个在nodemon中的例子

因此,以下几点应该可以:

"scripts": {
  "dev": "nodemon app.ts"
}

从TypeScript 3.8+开始,您现在只需使用:

tsc --watch


然后,您可以对编译后的代码使用
nodemon
,例如
nodemon dist/app.js

,当前答案可能会在使用ES模块时遇到问题。 使用
tsc-watch
时无需使用nodemon。它使用增量编译,使应用程序的重启速度更快

我发现以下方法最有效:

"start": "tsc-watch --onSuccess \"node ./dist/app.js\""

outDir
可以在您的
tsconfig

中定义。您可以在项目根目录中创建nodemon.json,并在其中添加以下代码:

{
“分机”:“*.ts”,
“exec”:“tsc&ts节点应用程序”
}
并更新脚本,如下所示:

“脚本”:{
“开始”:“npm运行构建:实时”,
“build:live”:“nodemon”,
}
发生的情况是,nodemon将检查扩展名为“.ts”的所有文件,然后启动tsc,然后启动ts节点