Next.js项目点击按钮报错:无法解析@vercel/turbopack-ecmascript-runtime模块
Next.js HMR错误:Module not found: Can't resolve '@vercel/turbopack-ecmascript-runtime/dev/client/hmr-client.ts'
报错信息:
Module not found: Can't resolve '@vercel/turbopack-ecmascript-runtime/dev/client/hmr-client.ts'
该错误关联Next.js热模块替换(HMR)机制,未在业务代码中直接引入@vercel/turbopack-ecmascript-runtime依赖。
已尝试的解决方案:
- 删除
node_modules并重新执行npm install/yarn install - 更新Next.js至最新版本(
npm update next/yarn upgrade next)
以下是额外的修复建议:
- 检查Turbopack启用状态:如果启动开发服务器时添加了
--turbo参数,会强制启用Turbopack。若无需使用该工具,去掉参数后用npm run dev/yarn dev启动服务;如果确实需要Turbopack,确认Next.js版本与Turbopack依赖兼容,部分版本组合可能存在依赖缺失问题。 - 清理Next.js缓存:删除项目根目录下的
.next文件夹(Linux/macOS执行rm -rf .next,Windows执行rd /s /q .next),之后重启开发服务器。 - 手动安装缺失依赖:直接执行
npm install @vercel/turbopack-ecmascript-runtime或yarn add @vercel/turbopack-ecmascript-runtime,补全Next.js内部依赖链中缺失的包。 - 排查next.config.js配置:检查配置文件中是否存在自定义HMR路径、或与Turbopack冲突的插件,暂时注释相关配置后重启服务测试。
- 重置依赖锁文件:删除
package-lock.json(npm)或yarn.lock(yarn),重新执行安装命令,避免锁文件中的版本映射错误导致依赖安装不全。
内容的提问来源于stack exchange,提问作者Jolanta
相关产品推荐
相关产品推荐

