带有编译和 nodemon 问题的 Typescript npm 脚本
Typescript npm script with compilation and nodemon issue
我一直在关注几个 SO 链接,了解如何在一个命令中 运行 同时使用 tsc -w 和 nodemon app.js。
Link 我跟着:
我在 node.js 中使用打字稿进行一个项目。每次 ts 代码发生变化时,我都想使用 tsc -w 进行编译,然后使用 nodemon app.js 文件执行 运行ning 服务器。问题是我尝试了这两个命令,但它仍然不是 运行ning 第二个命令。我不知道为什么它不起作用。
我在 package.json 脚本中使用的命令
"dev1": "tsc -w && nodemon ./.build/src/app.js"
,
"dev2": "tsc && concurrently \"tsc -w\" \"nodemon ./.build/src/app.js\""
运行 npm 运行 dev1
运行 npm 运行 dev2
目前只有第一个命令是 运行ning,我看不到 nodemon 运行s 时会出现的日志。终端仅显示在日志下方:
Found 0 errors. Watching for file changes
[注意:当我尝试一个接一个地 运行 时,这两个命令都 运行 完美]
使用的版本(稍旧)
打字稿:3.0.1
nodemon: 2.0.7
ts-节点:5.0.1
任何帮助将不胜感激。我不想使用任何额外的包,比如 ts-node-dev。
有几件事需要检查(并仔细检查)
- 确保您已经安装了
typescript
包(而不是 tsc
包)。做 npm uninstall tsc; npm i -D typescript
- 确保 运行
tsc
命令正确,例如tsc -w app.ts
(或者创建一个详细的tsconfig.json
如果你有一个完整的源目录
- 确保您为 nodemon 提供了正确的路径
这是一个可以开始使用的工作脚本:
mkdir my-ts-project
cd my-ts-project
npm init -y
npm i -D concurrently typescript nodemon
vim app.ts
npx concurrently "npx tsc -w app.ts" "nodemon app.js"
然后您可以更改 app.ts
并查看反映的更改。
提示:我建议使用 ts-node-dev
而不是 nodemon
并且仅将 tsc
用于生产构建。更简单。
对于那些仍在努力寻找解决方案的人,我终于从
找到了解决方案
将以下脚本添加到 package.json
"dev": "./node_modules/nodemon/bin/nodemon.js -e ts --exec \"tsc && node ./.build/src/index.js\""
一旦你简单地更改了代码 运行 带有 npm 运行 dev 的开发脚本,它会启动 nodemon 并使其监视 .ts 文件(使用 -e 标志)。然后,每次 .ts 文件更改时,nodemon 将执行基本上编译的任务并 运行s 节点应用程序。
我一直在关注几个 SO 链接,了解如何在一个命令中 运行 同时使用 tsc -w 和 nodemon app.js。
Link 我跟着:
我在 node.js 中使用打字稿进行一个项目。每次 ts 代码发生变化时,我都想使用 tsc -w 进行编译,然后使用 nodemon app.js 文件执行 运行ning 服务器。问题是我尝试了这两个命令,但它仍然不是 运行ning 第二个命令。我不知道为什么它不起作用。
我在 package.json 脚本中使用的命令
"dev1": "tsc -w && nodemon ./.build/src/app.js"
,
"dev2": "tsc && concurrently \"tsc -w\" \"nodemon ./.build/src/app.js\""
运行 npm 运行 dev1
运行 npm 运行 dev2
目前只有第一个命令是 运行ning,我看不到 nodemon 运行s 时会出现的日志。终端仅显示在日志下方:
Found 0 errors. Watching for file changes
[注意:当我尝试一个接一个地 运行 时,这两个命令都 运行 完美]
使用的版本(稍旧)
打字稿:3.0.1
nodemon: 2.0.7
ts-节点:5.0.1
任何帮助将不胜感激。我不想使用任何额外的包,比如 ts-node-dev。
有几件事需要检查(并仔细检查)
- 确保您已经安装了
typescript
包(而不是tsc
包)。做npm uninstall tsc; npm i -D typescript
- 确保 运行
tsc
命令正确,例如tsc -w app.ts
(或者创建一个详细的tsconfig.json
如果你有一个完整的源目录 - 确保您为 nodemon 提供了正确的路径
这是一个可以开始使用的工作脚本:
mkdir my-ts-project
cd my-ts-project
npm init -y
npm i -D concurrently typescript nodemon
vim app.ts
npx concurrently "npx tsc -w app.ts" "nodemon app.js"
然后您可以更改 app.ts
并查看反映的更改。
提示:我建议使用 ts-node-dev
而不是 nodemon
并且仅将 tsc
用于生产构建。更简单。
对于那些仍在努力寻找解决方案的人,我终于从
将以下脚本添加到 package.json
"dev": "./node_modules/nodemon/bin/nodemon.js -e ts --exec \"tsc && node ./.build/src/index.js\""
一旦你简单地更改了代码 运行 带有 npm 运行 dev 的开发脚本,它会启动 nodemon 并使其监视 .ts 文件(使用 -e 标志)。然后,每次 .ts 文件更改时,nodemon 将执行基本上编译的任务并 运行s 节点应用程序。