能跑 node -v 是唯一前提,其他所有操作都建立在这一步之上;没通过就别点 F5、别配 launch.json、也别信插件能“补救”。

能跑 node -v 是唯一前提,其他所有操作都建立在这一步之上;没通过就别点 F5、别配 launch.json、也别信插件能“补救”。
验证 node 命令是否真正可用
VSCode 的终端和调试器都靠系统 PATH 找 node,不是靠插件或设置。很多人在系统终端里能跑 node -v,但在 VSCode 内置终端(Ctrl + `)里报 'node' is not recognized,本质是环境变量没继承过去。
- Windows:重装 Node.js 时必须勾选 Add to PATH;安装后打开“系统属性 → 环境变量”,确认
C:\Program Files\nodejs\已加进“系统变量”的PATH;改完要彻底退出 VSCode(不是关终端),再重新打开 - macOS/Linux:从 Dock 或 Spotlight 启动 VSCode 不会加载
~/.zshrc;改完export PATH="...:$PATH"后只source ~/.zshrc不够,必须重启 VSCode,或者直接在终端执行code .启动项目 - 路径别含中文或空格:比如
C:\我的软件\nodejs或/Users/张三/node容易导致npm静默失败,优先用C:\Program Files\nodejs或/usr/local/bin/node
用终端手动运行是最稳的起步方式
别急着右键“Run Code”或点 F5,先确保脚本能被 node 直接执行。VSCode 内置终端就是你的命令行界面,它最真实反映环境状态。
DMap GL地图JSAPI(dmapgl)开发指南。用于编写、审查、调试 DMap 地图 API 代码,涵盖地图初始化、覆盖物渲染、图层管理、事件处理、控件交互等任务。当用户提及 dmap、dmapgl、jsapi‑gl 或相关地图开发需求时自动触发。
- 新建文件,保存为
hello.js(扩展名不能漏),内容只写一行:console.log("Hello World"); - 在 VSCode 内置终端执行:
node hello.js;看到输出即表示 JS 运行时工作正常 - 避免用插件快捷方式(如右键“Run Code”)——初期容易掩盖路径或权限问题,坚持手敲
node命令更可控 - 临时测试建议用
require(),不用import;ESM 支持需要package.json里有"type": "module",否则直接报错
配置 launch.json 实现断点调试
launch.json 不是万能钥匙,它只认 program 字段指向的真实 JS 文件路径。配错就断点不命中、报 Cannot find module 或 Cannot launch program。
- 按
Ctrl+Shift+D→ 点“创建launch.json” → 选Node.js环境,生成默认配置 -
"program": "${file}"适合单文件调试;如果入口是src/index.js,显式改成"program": "${workspaceFolder}/src/index.js" - 不要手填
runtimeExecutable,除非你明确用 nvm 切版本且需要锁定路径(例如"runtimeExecutable": "~/.nvm/versions/node/v18.18.2/bin/node") - TypeScript 或打包项目(Vite/Webpack):
program必须指向编译后的.js文件(如dist/index.js),不是.ts或.jsx源码
Code Runner 插件常见坑及绕过方式
code-runner 默认命令极简:node $fileName,它不处理编码、模块类型、输入流,也不读 package.json 配置,所以容易出问题。
- Windows 中文乱码:在 VSCode 设置中搜
code-runner.executorMap,把javascript对应值改成:"node -r utf-8 $fileName" - ESM 报
Cannot use import statement outside a module:先确保项目根目录有package.json且含"type": "module",再把 executor 改成:"node --experimental-specifier-resolution=node $fileName" - 遇到
process.stdin就假死:这是code-runner的固有限制,它不支持交互式输入;换用内置终端手动运行,或改用调试模式(F5)
复杂点不在配置本身,而在环境变量是否真正被 VSCode 继承——这步跳过,后面所有操作都是空中楼阁;最容易被忽略的是:改完 PATH 后只重启终端却不重启 VSCode,或者只 source 配置文件却不重新启动编辑器进程。

















