RuoYi、Vue CLI 和 uni-app 结合构建跨端全家桶方案

将 RuoYi、Vue CLI 和 uni-app 结合构建跨端全家桶方案,可以实现一套代码管理后台系统(PC)和移动端应用(H5/小程序/App)。以下是整合思路和关键步骤:


技术栈分工

  1. RuoYi:后端框架(Spring Boot + MyBatis)

  2. Vue CLI:PC 管理后台前端(基于 Vue 2 + Element UI)

  3. 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)
  • 安卓

  • 苹果

  • 小程序


多端适配技巧

  1. 条件编译

    复制代码
    // #ifdef H5
    console.log('仅在H5生效')
    // #endif
    
    // #ifdef MP-WEIXIN
    console.log('仅在微信小程序生效')
    // #endif
  2. UI 组件库选择

    • PC:Element UI(Vue CLI)

    • 移动端:uni-app 官方组件 或 uView UI

  3. 路由管理

    • PC:Vue Router(支持嵌套路由)

    • uni-app:内置路由(pages.json 配置)


部署方案

  1. 后端

    • RuoYi 打包为 JAR 部署到服务器

    • Nginx 配置:

      复制代码
      server {
        listen 80;
        server_name api.yourdomain.com;
        location / {
          proxy_pass http://localhost:8080;
        }
      }
  2. PC 前端

    复制代码
    npm run build
    # 部署 dist 目录到 Nginx
  3. uni-app 多端发布

    • H5:npm run build:h5

    • 微信小程序:npm run dev:mp-weixin (用微信开发者工具打开)

    • App:通过 HBuilderX 云打包


常见问题解决

  1. 跨域问题

    • 开发环境:配置 vue.config.js 代理

      复制代码
      devServer: {
        proxy: {
          '/api': {
            target: 'http://localhost:8080',
            changeOrigin: true
          }
        }
      }
    • 生产环境:Nginx 反向代理

  2. 样式冲突

    • PC 和移动端使用独立项目

    • 全局样式通过 @import 引入时添加 scoped

  3. 权限同步

    • 共用 RuoYi 的 RBAC 权限体系

    • 前端路由权限通过接口动态生

通过以上方案,可构建企业级应用:

  • PC 端:复杂数据管理(Element UI 表格/表单)

  • 移动端:轻量级操作(uni-app 跨端能力)

  • 后端:统一数据源和权限控制(RuoYi 成熟架构)

相关推荐
哈__几秒前
React Native 鸿蒙跨平台开发:StatusBar 状态栏组件
javascript·react native·react.js
丢,捞仔35 分钟前
uni-app上架应用添加权限提示框
前端·javascript·uni-app
Hilaku41 分钟前
我是如何用一行 JS 代码,让你的浏览器内存瞬间崩溃的?
前端·javascript·node.js
五仁火烧44 分钟前
npm run build命令详解
前端·vue.js·npm·node.js
哈__1 小时前
React Native 鸿蒙跨平台开发:简易记事本 APP
javascript·react native·react.js
贺今宵1 小时前
electron-vue无网络环境,读取本地图片/文件展示在页面vue中protocol
前端·javascript·electron
老前端的功夫1 小时前
TypeScript索引访问类型深度解析:类型系统的动态访问与模式匹配
前端·javascript·ubuntu·架构·typescript·前端框架
张元清1 小时前
大白话讲 React2Shell 漏洞:智能家居的语音助手危机
前端·javascript·react.js
志摩凛1 小时前
Element UI 长表单校验失败后自动展开折叠面板并滚动定位
数据结构·vue.js
boooooooom1 小时前
手写高质量深拷贝:攻克循环引用、Symbol、WeakMap等核心难点
javascript·面试