Vite React项目部署Render时Rollup无法解析Yup模块报错
解决Vite React部署到Render时Yup导入失败的问题
核心原因
代码里导入的是大写的"Yup",但实际npm包名是小写的"yup"。本地开发环境(比如Windows)文件系统大小写不敏感,所以能正常解析,但Render使用的Linux系统大小写敏感,导致Rollup无法找到对应模块,构建失败。
修复步骤
- 打开
/src/pages/Login.jsx,找到Yup的导入语句,将import ... from "Yup"修改为import ... from "yup"。例如:// 错误写法 import Yup from "Yup"; // 正确写法 import * as Yup from "yup"; // 或按需导入 - 全局检查项目中所有使用Yup的文件,确保所有导入的包名都是小写的
"yup",避免遗漏其他文件的同样问题。 - 确认
package.json中已正确声明yup依赖:"dependencies": { "yup": "^x.x.x" // 替换为你的实际版本 } - 在Render的构建配置中,使用
npm ci && npm run build作为构建命令,确保依赖完全按照package-lock.json安装,避免版本不一致问题。
额外验证
如果修改后仍有问题,可在本地模拟Linux环境的大小写敏感测试,或清理Render的构建缓存后重新部署。
内容的提问来源于stack exchange,提问作者user22867449
相关产品推荐
相关产品推荐

