Node.js后端热更新需用nodemon,关键在正确配置--watch路径、--ext扩展名及--ignore规则;避免端口冲突、重复初始化和调试器共存,确保文件保存生效。

Node.js 后端热更新在 VSCode 里不靠插件,靠 nodemon;装了就跑、配错就卡,关键在监听路径和忽略规则。
nodemon 启动命令必须显式指定 --watch 和 --ext
默认行为只监听当前目录下 .js 文件,但现代项目常含 .cjs、.mjs、.json 或 TypeScript 编译输出,漏掉就会改了文件却不重启。
-
--watch src比--watch .更安全:避免监听node_modules或构建产物目录引发误触发 -
--ext js,json,cjs,mjs要覆盖你实际修改的扩展名;如果用ts-node,还得加ts - Windows 下路径写法统一用正斜杠,比如
--ignore "dist/**/*",别用反斜杠,否则nodemon可能解析失败
package.json 的 dev 脚本别直接调 nodemon app.js
常见错误是把入口文件硬编码进脚本,导致切换开发模式(如从 server.js 改成 bin/www)时忘了同步改脚本,结果热更新跑的是旧文件。
使用一条命令部署ProbeChain Rydberg测试网代理节点。自动注册为Agent(NodeType=1),免gas,支持macOS/Linux/Windows。触发词:/r
- 推荐写成:
"dev": "nodemon --watch src --ext js,json,cjs --ignore 'src/**/*.test.js' --exec node server.js" - 如果入口是 TypeScript,用
--exec ts-node server.ts,不要同时开tsc --watch,否则两个进程争抢编译输出 - 确保
server.js(或对应入口)里没有依赖全局环境变量未加载——热重启时模块顶层代码会重执行,数据库连接等初始化逻辑可能重复建连
VSCode 调试器和 nodemon 别共存
点绿色「运行」按钮启动调试,再手动开终端跑 npm run dev,等于两个服务监听同一端口,必然冲突。VSCode 的 launch.json 本质是另起一个 Node 进程,跟 nodemon 互不感知。
- 真要断点调试,停掉
nodemon,用launch.json启动;热更新期间断点大概率失效,不是 bug 是设计使然 - 如果必须边热更边查状态,改用
console.log或debugger+ 浏览器开发者工具,比 VSCode 断点更可靠 -
launch.json里别设"program"指向server.js同时又让nodemon监听它——这是最典型的端口占用报错来源
真正容易被忽略的不是怎么配,而是每次改完配置后没保存文件、或编辑器自动保存被关掉——nodemon 只响应磁盘文件变化,不是编辑器内存状态。改完 package.json 或 server.js,记得 Ctrl+S 真正落盘。

















