React Next.js项目运行npm run dev报loader.js:892错误如何解决
问题原因定位
internal/modules/cjs/loader.js:892类报错大多是Node.js版本与当前项目使用的Next.js版本不匹配导致的,少数场景由npm缓存损坏、项目配置错误、端口占用触发。
解决步骤
- 核对版本兼容性
先查看项目package.json中next的版本,匹配对应Node.js要求:- Next.js 13+ 要求 Node.js 16.8.0 及以上版本,推荐使用18.x、20.x LTS版本
- Next.js 12 要求 Node.js 12.22.0 及以上版本
执行node -v查看本地Node版本,不符合要求可通过nvm切换到对应匹配的LTS版本,避免全局重装Node导致多项目版本冲突。
- 全量清理缓存重装依赖
依次执行以下命令:# 强制清理npm全局缓存 npm cache clean --force # 删除本地依赖目录和锁文件 rm -rf node_modules package-lock.json # 重新安装所有依赖 npm install - 排查配置错误
检查根目录next.config.js是否存在语法错误,是否引入了未安装的第三方依赖,可先替换为初始化默认配置后重启测试。 - 更换端口启动
若默认3000端口被其他进程占用也会触发同类加载报错,可指定其他端口启动测试:npm run dev -- -p 3001
内容的提问来源于stack exchange,提问作者Sohail Shams
相关产品推荐
相关产品推荐

