必须先在系统终端验证node -v和npm -v可用,任一失败说明path未生效;vscode需完全退出后重启才能加载新环境变量;launch.json中program应设为"${file}"或配合npm start,调试nodemon须用attach模式并确保端口一致。

node -v 报错就别往下看了
VSCode 里跑不起来 Node.js 脚手架,90% 是因为 node 命令本身在系统终端就不可用。不是 VSCode 的问题,是环境没搭好。
必须在系统终端(Windows 是 cmd/PowerShell,macOS/Linux 是 Terminal)里执行:
-
node -v输出版本号(如v20.15.1) -
npm -v同样输出版本号
任一失败,说明 PATH 没生效。Windows 用户重装 Node.js 时务必勾选 Add to PATH;macOS/Linux 用 nvm 的,确认 source ~/.zshrc(或对应 shell 配置)已执行且 which node 返回有效路径。改完环境变量后,必须完全退出 VSCode 再重启,否则内置终端仍读不到新 PATH。
launch.json 里 program 别写死成 app.js
VSCode 自动生成的调试配置常设 "program": "${workspaceFolder}/app.js",但脚手架项目入口千差万别:index.js、server.js、src/main.js,甚至通过 npm start 启动。
推荐两种写法:
- 单文件调试:用
"program": "${file}"—— 直接调试当前打开的 JS 文件,适合快速验证逻辑 - 启动脚本调试:把
"program"改成"npm",加"args": ["start"]和"console": "integratedTerminal",否则看不到npm输出日志
注意:npm start 依赖 package.json 中的 scripts.start 字段,确保它指向真实入口,比如 "start": "node index.js" 或 "start": "ts-node src/index.ts"。
全局工具(如 create-react-app、vue-cli)装在哪,PATH 就得跟到哪
用 npm install -g create-react-app 安装脚手架后,在 VSCode 终端里运行 npx create-react-app my-app 报 command not found?大概率是全局 bin 目录没进 PATH。
查清楚安装位置:
- 执行
npm config get prefix,通常返回类似C:\Users\XXX\npm(Windows)或/usr/local(macOS) - 该目录下的
bin子目录(Windows 是node_modules\.bin)才是可执行文件所在 - 把这个完整路径(如
C:\Users\XXX\npm\node_modules\.bin)手动加进系统 PATH
验证:在系统终端运行 create-react-app -V,成功后再进 VSCode 测试。别信“装了就能用”,npm 全局路径和 shell 的 PATH 是两回事。
调试器连不上 nodemon?用 attach 模式,别硬塞进 launch
想边改代码边调试,又不想每次手动 F5?别在 launch.json 的 program 里直接写 nodemon —— VSCode 调试器不支持热替换,会报错或断点失效。
正确姿势是分两步:
- 终端手动启动:
nodemon --inspect-brk index.js(--inspect-brk让它启动即暂停,等调试器连接) - VSCode 里配一个
attach类型的配置:"type": "node"、"request": "attach"、"port": 9229
端口默认是 9229,如果被占用了,nodemon --inspect-brk=9230 index.js 换个端口,launch.json 里同步改 "port"。这个细节漏掉,调试器就一直转圈连不上。











