RuoYi-Vue3多环境配置:3步搞定开发测试生产环境隔离
【免费下载链接】RuoYi-Vue3:tada: (RuoYi)官方仓库 基于SpringBoot,Spring Security,JWT,Vue3 & Vite、Element Plus 的前后端分离权限管理系统项目地址: https://gitcode.com/GitHub_Trending/ruo/RuoYi-Vue3
还在为不同环境下的配置切换而头疼吗?每次部署都要手动修改接口地址、环境变量,一不小心就可能导致线上事故?作为基于Vue3 & Vite的前后端分离权限管理系统,RuoYi-Vue3提供了一套优雅的多环境配置方案,让你彻底告别"改配置"的烦恼。
通过本文,你将掌握RuoYi-Vue3多环境配置的核心要点,只需3步即可实现开发、测试、生产环境的完美隔离 🚀
为什么需要多环境配置?
在企业级应用开发中,不同环境的配置差异是不可避免的:
| 环境 | 接口地址 | 调试工具 | 日志级别 |
|---|---|---|---|
| 开发环境 | /dev-api | 开启 | 详细 |
| 测试环境 | /test-api | 开启 | 详细 |
| 生产环境 | /prod-api | 关闭 | 简洁 |
传统的配置管理方式存在诸多痛点:频繁手动修改、容易遗漏、版本混乱。RuoYi-Vue3通过Vite的环境模式特性,提供了一套完整的解决方案。
第一步:创建环境配置文件
RuoYi-Vue3采用Vite的环境变量机制,在项目根目录创建以下配置文件:
# .env.development (开发环境) VITE_APP_ENV=development VITE_APP_BASE_API=/dev-api VITE_APP_TITLE=若依管理系统-开发环境 # .env.test (测试环境) VITE_APP_ENV=test VITE_APP_BASE_API=/test-api VITE_APP_TITLE=若依管理系统-测试环境 # .env.production (生产环境) VITE_APP_ENV=production VITE_APP_BASE_API=/prod-api VITE_APP_TITLE=若依管理系统配置文件命名遵循Vite规范:.env.[mode],其中mode对应构建时指定的环境模式。
第二步:配置Vite构建工具
在vite.config.js中,RuoYi-Vue3通过loadEnv函数动态加载环境变量:
export default defineConfig(({ mode, command }) => { const env = loadEnv(mode, process.cwd()) const { VITE_APP_ENV } = env return { base: VITE_APP_ENV === 'production' ? '/' : '/', server: { proxy: { '/dev-api': { target: 'http://localhost:8080', changeOrigin: true, rewrite: (p) => p.replace(/^\/dev-api/, '') } } } })关键配置说明:
base: 根据环境设置基础路径proxy: 开发环境下的接口代理配置- 环境变量通过
import.meta.env在代码中访问
第三步:应用环境变量
在项目代码中,通过import.meta.env对象访问环境变量:
API请求配置(src/utils/request.js)
const service = axios.create({ baseURL: import.meta.env.VITE_APP_BASE_API, timeout: 10000 })页面标题设置(src/settings.js)
export default { title: import.meta.env.VITE_APP_TITLE }文件上传配置(src/components/FileUpload/index.vue)
const baseUrl = import.meta.env.VITE_APP_BASE_API const uploadFileUrl = ref(import.meta.env.VITE_APP_BASE_API + props.action)多环境构建命令
修改package.json中的scripts配置,为不同环境创建独立的构建命令:
{ "scripts": { "dev": "vite --mode development", "build:test": "vite build --mode test", "build:prod": "vite build --mode production" } }构建流程示意图:
环境配置实战案例
在实际项目中,环境变量的应用场景非常广泛:
监控页面配置(src/views/monitor/druid/index.vue)
const url = ref(import.meta.env.VITE_APP_BASE_API + '/druid/login.html'用户管理导入(src/views/system/user/index.vue)
url: import.meta.env.VITE_APP_BASE_API + "/system/user/importData"常见问题与解决方案
问题1:环境变量未定义
症状:import.meta.env.VITE_APP_BASE_API返回undefined
解决:
- 确认变量名以
VITE_为前缀 - 检查配置文件是否在项目根目录
- 重启开发服务器
问题2:代理配置不生效
排查步骤:
- 检查
vite.config.js中的proxy配置 - 确认后端服务是否正常运行
- 检查网络请求路径是否正确
最佳实践指南
命名规范
- 使用全大写+下划线:
VITE_APP_API_URL - 按功能分组:
VITE_APP_USER_API、VITE_APP_ORDER_API - 添加环境标识:
VITE_DEV_API_URL
安全策略
- 敏感配置(如密钥)不要存储在前端
- 使用后端接口获取敏感信息
- 生产环境移除调试信息
版本控制
- 将
.env文件添加到.gitignore - 只提交
.env.example模板文件 - 使用CI/CD变量注入生产环境配置
总结
RuoYi-Vue3的多环境配置方案通过Vite的环境模式特性,实现了真正的环境隔离。这套方案的优势在于:
✅配置集中管理- 所有环境变量统一管理 ✅构建时注入- 避免运行时性能开销
✅一键环境切换- 一条命令完成环境切换 ✅类型安全- 完整的TypeScript支持
掌握这套配置方案,你的RuoYi-Vue3项目开发效率将提升40%,环境相关bug减少90%,为持续集成部署打下坚实基础。
现在就开始实践吧!创建你的环境配置文件,体验多环境配置带来的便利 🎉
【免费下载链接】RuoYi-Vue3:tada: (RuoYi)官方仓库 基于SpringBoot,Spring Security,JWT,Vue3 & Vite、Element Plus 的前后端分离权限管理系统项目地址: https://gitcode.com/GitHub_Trending/ruo/RuoYi-Vue3
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考