如何修复React项目中npm install的‘Cannot Find Module’错误?
React项目npm模块缺失问题解决办法
我有一个React项目,当前遇到如下错误:
- 尝试删除node_modules和package.json文件时被提示无删除权限
- 执行
npm install命令后问题仍未解决
具体错误信息如下:
node:internal/modules/cjs/loader:956 const err = new Error(message); ^ 错误: 无法找到模块 './functions/valid' 调用栈: - C:\Users\paul\AppData\Roaming\npm\node_modules\npm\node_modules\semver\index.js - C:\Users\paul\AppData\Roaming\npm\node_modules\npm\lib\cli.js - C:\Users\paul\AppData\Roaming\npm\node_modules\npm\bin\npm-cli.js 在 Function.Module._resolveFilename (node:internal/modules/cjs/loader:956:15) 在 Function.Module._load (node:internal/modules/cjs/loader:804:27) 在 Module.require (node:internal/modules/cjs/loader:1028:19) 在 require (node:internal/modules/cjs/helpers:102:18) 在 Object.<anonymous> (C:\Users\paul\AppData\Roaming\npm\node_modules\npm\node_modules\semver\index.js:12:10) 在 Module._compile (node:internal/modules/cjs/loader:1126:14) 在 Object.Module._extensions..js (node:internal/modules/cjs/loader:1180:10) 在 Module.load (node:internal/modules/cjs/loader:1004:32) 在 Function.Module._load (node:internal/modules/cjs/loader:839:12) 在 Module.require (node:internal/modules/cjs/loader:1028:19) { 错误代码: 'MODULE_NOT_FOUND', 调用栈: [ 'C:\\Users\\paul\\AppData\\Roaming\\npm\\node_modules\\npm\\node_modules\\semver\\index.js', 'C:\\Users\\paul\\AppData\\Roaming\\npm\\node_modules\\npm\\lib\'
解决步骤
1. 修复全局npm的semver模块
错误根源是全局npm依赖的semver模块缺失文件,先处理这个:
- 以管理员权限打开CMD或PowerShell
- 执行命令重装semver:
npm install -g semver - 若无效,直接删除全局semver文件夹后重装npm:
rd /s /q "C:\Users\paul\AppData\Roaming\npm\node_modules\npm\node_modules\semver" npm install -g npm
2. 解决项目文件权限问题
- 保持管理员权限,进入你的React项目目录
- 删除node_modules和package-lock.json(注意不要删除package.json):
rd /s /q node_modules del package-lock.json - 重新执行依赖安装:
npm install
3. 清理npm缓存(备选)
如果上述步骤无效,清理缓存后重试:
npm cache clean --force
再执行项目的npm install
内容的提问来源于stack exchange,提问作者Future
相关产品推荐
相关产品推荐

