將 RuoYi、Vue CLI 和 uni-app 結合構建跨端全家桶方案,可以實現一套代碼管理后臺系統(PC)和移動端應用(H5/小程序/App)。以下是整合思路和關鍵步驟:
技術棧分工
-
RuoYi:后端框架(Spring Boot + MyBatis)
-
Vue CLI:PC 管理后臺前端(基于 Vue 2 + Element UI)
-
uni-app:移動端應用(一套代碼編譯到 H5/小程序/App)
整體架構
關鍵實現步驟
1. 后端統一 API 服務
-
使用 RuoYi 提供 RESTful API
-
配置跨域支持(PC 和移動端共享 API)
?
2. PC 管理后臺(Vue CLI)
-
基于 RuoYi-Vue 項目(GitHub)
-
技術棧:Vue 2 + Vuex + Vue Router + Element UI
3. PC 前端(Vue CLI)
-
基于 RuoYi-Vue 項目(GitHub)
-
技術棧:Vue 2 + Vuex + Vue Router + Element UI+Bootstrap
?
4. 移動端(uni-app)
-
安卓:
-
蘋果:
-
小程序:
多端適配技巧
-
條件編譯:
// #ifdef H5 console.log('僅在H5生效') // #endif// #ifdef MP-WEIXIN console.log('僅在微信小程序生效') // #endif
-
UI 組件庫選擇:
-
PC:Element UI(Vue CLI)
-
移動端:uni-app 官方組件 或 uView UI
-
-
路由管理:
-
PC:Vue Router(支持嵌套路由)
-
uni-app:內置路由(pages.json 配置)
-
部署方案
-
后端:
-
RuoYi 打包為 JAR 部署到服務器
-
Nginx 配置:
server {listen 80;server_name api.yourdomain.com;location / {proxy_pass http://localhost:8080;} }
-
-
PC 前端:
npm run build # 部署 dist 目錄到 Nginx
-
uni-app 多端發布:
-
H5:
npm run build:h5
-
微信小程序:
npm run dev:mp-weixin
?(用微信開發者工具打開) -
App:通過 HBuilderX 云打包
-
常見問題解決
-
跨域問題:
-
開發環境:配置 vue.config.js 代理
devServer: {proxy: {'/api': {target: 'http://localhost:8080',changeOrigin: true}} }
-
生產環境:Nginx 反向代理
-
-
樣式沖突:
-
PC 和移動端使用獨立項目
-
全局樣式通過?
@import
?引入時添加 scoped
-
-
權限同步:
-
共用 RuoYi 的 RBAC 權限體系
-
前端路由權限通過接口動態生
-
通過以上方案,可構建企業級應用:
-
PC 端:復雜數據管理(Element UI 表格/表單)
-
移動端:輕量級操作(uni-app 跨端能力)
-
后端:統一數據源和權限控制(RuoYi 成熟架構)
?