为什么在使用nodemon和ts-node时节点检查器无法启动?

问题描述 投票:5回答:3

我有一个用typescript编写的简单节点服务器。我的package.json配置为:

"scripts": {
  "build": "tsc",
  "dev": "nodemon --watch src/**/* -e ts,json --exec ts-node ./src/server.ts",
  "debug": "nodemon  --verbose  --watch src/**/* -e ts,json --exec ts-node --inspect ./src/server.ts"
},

当我运行npm run dev时,nodemon将启动服务器并在进行任何更改时重新启动它。

[02/28/18 20:45:53]  npm run dev

> [email protected] dev C:\Users\joe\pq\pq-api
> nodemon --watch src/**/* -e ts,json --exec ts-node ./src/server.ts

[nodemon] 1.15.1
[nodemon] to restart at any time, enter `rs`
[nodemon] watching: src/**/*
[nodemon] starting `ts-node ./src/server.ts`
initializing config to development
info: PQ-API running on port 3000

但是,当我运行npm run debug(所以我可以附加一个调试器)看起来它开始启动,但只是永远挂起

[02/28/18 20:39:30]  npm run debug

> [email protected] debug C:\Users\joe\pq\pq-api
> nodemon  --verbose  --watch src/**/* -e ts,json --exec ts-node --inspect ./src/server.ts

[nodemon] 1.15.1
[nodemon] to restart at any time, enter `rs`
[nodemon] or send SIGHUP to 10156 to restart
[nodemon] watching: src/**/*
[nodemon] watching extensions: ts,json
[nodemon] starting `ts-node --inspect ./src/server.ts`
[nodemon] spawning
[nodemon] child pid: 13344
[nodemon] watching 12 files

这就是输出的全部。该脚本永远不会执行;服务器永远不会启动,检查器永远无法连接。

节点8.94 nodemon 1.15.1 ts-node 5.0.0 打字稿2.7.2

node.js typescript debugging nodemon ts-node
3个回答
5
投票

使用ts-node 5.0.0,您不再以相同的方式传递--inspect flag。建议的方式是node --inspect -r ts-node/register path/to/ts。例如:

nodemon --watch src/**/* -e ts,json --exec node --inspect-brk -r ts-node/register src/app.ts

https://github.com/TypeStrong/ts-node/issues/537


1
投票

为inspect选项提供位置和端口,如:

--inspect=0.0.0.0:9200

0
投票

ts-node ^5.0.1也一样。 --inspect=host:port--inspect=port似乎都没有工作。然而,版本3.3.0很好。

我的nodemon:

{
"watch"  : ["./src"],
"ext"    : "ts",
"ignore" : "*.test.ts",
"exec"   : "ts-node --inspect=localhost:9229 -r tsconfig-paths/register ./src/server.ts"
}
© www.soinside.com 2019 - 2024. All rights reserved.