如何解决React项目启动时出现的Cannot find module 'ajv/dist/compile/codegen'错误?
解决React应用启动时"Cannot find module 'ajv/dist/compile/codegen'"错误
Cannot find module 'ajv/dist/compile/codegen'
Require stack:
- C:\Users\kyawz\Documents\React Project\testing\node_modules\ajv-keywords\dist\definitions\typeof.js
- C:\Users\kyawz\Documents\React Project\testing\node_modules\ajv-keywords\dist\keywords\typeof.js
- C:\Users\kyawz\Documents\React Project\testing\node_modules\ajv-keywords\dist\keywords\index.js
- C:\Users\kyawz\Documents\React Project\testing\node_modules\ajv-keywords\dist\index.js
- C:\Users\kyawz\Documents\React Project\testing\node_modules\schema-utils\dist\validate.js
- C:\Users\kyawz\Documents\React Project\testing\node_modules\schema-utils\dist\index.js
- C:\Users\kyawz\Documents\React Project\testing\node_modules\webpack-dev-server\lib\Server.js
- C:\Users\kyawz\Documents\React Project\testing\node_modules\react-scripts\scripts\start.js
临时修复现有项目
- 删除项目根目录下的
node_modules文件夹和package-lock.json(用yarn则删除yarn.lock) - 执行
npm install或yarn install重新安装依赖 - 若仍报错,手动锁定ajv兼容版本:
在package.json中添加以下配置:
用npm的话,先安装依赖:"resolutions": { "ajv": "^8.12.0" }npm install --save-dev npm-force-resolutions,再在package.json的scripts里添加一行:"preinstall": "npx npm-force-resolutions",最后重新执行npm install
避免新建项目触发错误
- 升级全局
create-react-app:执行npm install -g create-react-app,新版本的react-scripts已修复该依赖兼容问题 - 若升级后仍有问题,新建项目后立即添加上述
resolutions配置,再重新安装依赖
内容的提问来源于stack exchange,提问作者David Hub
相关产品推荐
相关产品推荐

