能跑 node 命令且 vscode 可断点调试才算真正搭好环境;需在系统终端执行 node -v 和 npm -v 验证,报错则说明 node.js 未加入 path,lts 安装时须勾选 add to path,windows 避免中文或空格路径,macos/linux 使用 nvm 需确保配置已加载;npm -v 成功是 vscode 调试器正常工作的前提。

能跑 node 命令,且 VSCode 能断点调试,才算真正搭好了——其余插件、格式化、TypeScript 都是锦上添花,不是刚需。
验证 node 和 npm 是否可用(别跳过这步)
很多人卡在这一步却以为是 VSCode 的问题。打开系统终端(不是 VSCode 内置终端),执行:
node -v<br>npm -v
如果报错 'node' 不是内部或外部命令,说明 Node.js 没进系统 PATH。LTS 版安装时勾选 Add to PATH 是关键;若漏了,需手动把 Node.js 安装目录(如 C:\Program Files\nodejs)加到系统环境变量 Path 里,然后重启所有终端窗口。
- Windows 用户注意:不要装在含中文或空格的路径下(如
D:\我的软件\nodejs),否则npm可能静默失败 - macOS/Linux 用户若用
nvm,确保source ~/.nvm/nvm.sh已写入 shell 配置文件,且新终端已加载 -
npm -v必须成功——VSCode 的调试器底层依赖npm启动脚本,不是可选项
VSCode 内置调试器直接可用,无需额外插件
VSCode 自带 Node.js 调试支持,Node.js Extension Pack 或 Debugger for Node.js 这类插件现在已过时,装了反而可能冲突。确认 node 可用后,只需三步:
- 新建项目文件夹,在其中创建
index.js,写一行console.log('ok'); - 按
Ctrl+Shift+P(macOS 是Cmd+Shift+P),输入Debug: Open Configuration,选择Node.js→Current File - VSCode 会自动生成
.vscode/launch.json,内容含"program": "${file}"—— 这表示“运行当前打开的 JS 文件”
此时在代码行号左侧单击设断点,按 F5 即可启动调试。若提示 Cannot find runtime 'node',一定是第一步的 node 环境没配好,不是 VSCode 设置问题。
launch.json 中常见配置陷阱
默认生成的配置适合单文件调试,但实际开发中容易踩坑:
- 想调试
npm start?把"program"改成"npm","args"设为["start"],并加"console": "integratedTerminal",否则看不到npm输出 - 用
nodemon热重载?不能直接在launch.json里调nodemon—— VSCode 调试器不支持进程热替换,必须用attach模式:先命令行跑nodemon --inspect-brk index.js,再在launch.json中配置"type": "node"+"request": "attach"+"port": 9229 - 路径含中文或空格?
"program"值务必用双引号包裹,且避免使用${workspaceFolder}拼接路径(某些版本解析异常),直接写相对路径更稳
ESLint 和 Prettier 是“事后补救”,不是环境搭建环节
它们解决的是代码质量,不是运行和调试能力。等你能稳定 F5 断点、看到变量值、单步执行后再装:
- 装
ESLint插件后,必须在项目根目录放.eslintrc.cjs(不是 JSON),否则 VSCode 无法识别规则 -
Prettier若和 ESLint 冲突,优先关掉 Prettier 的自动格式化,用 ESLint 的fix on save更可靠 - 别在刚建项目时就配
typescript——tsc --init生成的tsconfig.json默认禁用allowJs,会导致 JS 文件无法被识别,徒增困惑
真正容易被忽略的,是 launch.json 里那个 "env" 字段:本地开发常要 mock 环境变量(比如 NODE_ENV=development),但很多人写成 "env": {"NODE_ENV": "development"} 却没生效——因为没加 "runtimeExecutable": "node",导致环境变量传不到子进程里。











