Vitest运行测试时出现ERR_MODULE_NOT_FOUND错误求助
解决Vitest执行测试时出现ERR_MODULE_NOT_FOUND的问题
针对你执行npm run test filename时出现的ERR_MODULE_NOT_FOUND错误(找不到magic-string/dist/magic-string.es.mjs),以下是几个可行的解决方法:
方法1:彻底清理依赖并重新安装
- 清除npm缓存:
npm cache clean --force - 删除项目中的
node_modules文件夹和package-lock.json文件:
Windows系统:
macOS/Linux系统:rmdir /s /q node_modules del package-lock.jsonrm -rf node_modules package-lock.json - 重新安装所有依赖:
npm install
方法2:手动安装指定版本的magic-string
错误提示中提到可能需要导入magic-string/dist/magic-string.cjs.js,说明当前安装的magic-string版本可能和Vitest不兼容,手动安装一个兼容的版本:
npm install magic-string@^0.30.0
(该版本为Vitest常用兼容版本,若仍有问题可查看Vitest的package.json中指定的magic-string依赖范围)
方法3:调整Vitest版本
如果当前Vitest版本存在依赖兼容问题,尝试降级或升级到稳定版本:
# 示例:降级到0.34.0稳定版 npm install vitest@^0.34.0
方法4:检查项目模块系统配置
- 确认
package.json中的type字段:项目使用ES模块时确保包含"type": "module";使用CommonJS时不要设置该字段,避免模块解析冲突。 - 检查
vitest.config.ts(或vite.config.ts)中的resolve配置,确保没有错误的路径映射影响模块查找。
内容的提问来源于stack exchange,提问作者nidhi sharma
相关产品推荐
相关产品推荐

