vscode调试koa2必须同时配置nodemon热重启和launch.json入口路径:先npm install --save-dev nodemon并设"dev": "nodemon index.js",再修改launch.json中"program"指向实际入口文件(如bin/www),若用nodemon则改用attach模式配合--inspect-brk=9229实现自动重连。

直接运行 npm run dev 却没反应?改了代码还得手动重启?断点根本进不去?这些问题不是 Koa2 本身的问题,而是 VSCode 环境配置缺了关键两步:nodemon 热监听 + launch.json 入口路径对齐。
npm run dev 报错“无法加载 koa2.ps1”怎么办
这是 Windows PowerShell 的执行策略拦截,不是 Koa2 或 VSCode 的 bug。错误信息里那个 koa2.ps1 是全局安装的脚手架生成器(koa-generator)留下的 PowerShell 脚本,系统默认禁止运行本地脚本。
- 临时解法:在 VSCode 集成终端里执行
Set-ExecutionPolicy RemoteSigned -Scope CurrentUser,回车确认 - 更推荐的做法:别用
koa2 myapp这类全局命令,直接npm init -y && npm install koa手动初始化项目,彻底绕过 PowerShell 脚本依赖 - 删掉
node_global\koa2.ps1没用——下次重装还会生成,关键是策略没改
修改代码后不自动重启,得 Ctrl+C 再 npm run dev
因为默认 npm run dev 只是执行一次 node index.js,它根本不监听文件变化。必须引入 nodemon 才能实现热重启。
微软正式发布 Visual Studio Code 1.118 版本 。本次更新重点强化了 AI 开发体验与企业管理能力,其中最引人注目的是新增 Copilot CLI 远程控制功能,允许开发者通过手机或网页远程监控和接管 AI 会话 。同时,为了提高 AI 的运行性价比,新版本优化了令牌缓存策略以降低成本 。此外,1.118 版还引入了 Chronicle 本地历史追踪、TypeScript 7.0 支持以及更严格的企业级访问管控 。
- 安装:运行
npm install --save-dev nodemon(注意加--save-dev,它只在开发期需要) - 配置
package.json中的脚本:"dev": "nodemon index.js"—— 入口文件名要按你实际写的来,比如app.js、server.js或bin/www - 如果你用 TypeScript,得加参数:
"dev": "nodemon --ext js,ts --exec ts-node index.ts" - 启动后看到终端输出
[nodemon] restarting due to changes才算生效;没这句说明没监听到变更
VSCode 断点调试 F5 就报 Cannot find module '/index.js'
VSCode 默认调试配置硬编码了 index.js,但 Koa2 项目入口千差万别:脚手架生成的是 bin/www,MVC 结构常用 app.js,TypeScript 项目可能是 src/index.ts。不改 launch.json,断点永远进不去。
- 打开命令面板(
Ctrl+Shift+P),输入launch.json,选择“Node.js”环境生成配置 - 找到
program字段,改成你的真实入口路径,例如:"program": "${workspaceFolder}/bin/www"或"program": "${workspaceFolder}/app.js" - 如果用了
nodemon,调试模式必须切到attach,并在package.json的 dev 脚本里加上--inspect-brk=9229,否则 VSCode 连不上调试进程
最常被忽略的一点:nodemon 和 launch.json 必须配对使用。只装 nodemon 不改 launch.json,断点无效;只改 launch.json 不装 nodemon,改完代码还得手动重启。两者缺一不可。










