# RuoYi-SpringBoot3-UniApp **Repository Path**: cctvbtx/RuoYi-SpringBoot3-UniApp ## Basic Information - **Project Name**: RuoYi-SpringBoot3-UniApp - **Description**: No description available - **Primary Language**: Unknown - **License**: MIT - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 2 - **Created**: 2025-12-26 - **Last Updated**: 2025-12-26 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README

logo

RuoYi SpringBoot3 UniApp v1.2.0

基于 Vue3 + UniApp 的跨平台移动端快速开发框架

## 平台简介 RuoYi SpringBoot3 UniApp 是基于 [RuoYi-App](https://gitee.com/y_project/RuoYi-App/tree/vue3/) 的移动端解决方案,采用 Vue3 + UniApp 技术栈,实现一套代码多端运行(微信小程序、App、H5、Electron桌面端)。 本项目提供完整的移动端开发框架,包含登录认证、个人中心、工作台等常用功能模块,采用最新技术栈和最佳实践,帮助开发者快速构建跨平台移动应用。 ## 联系方式 - 🌐 **官方网站**:https://www.undsky.com ## 相关项目 ### 后端项目 - 💻 https://github.com/undsky/RuoYi-SpringBoot3-Pro ## ✨ 核心特性 ### 1. 🌐 跨平台支持 一套代码,多端运行: | 平台 | 支持状态 | 说明 | |------|---------|------| | **微信小程序** | ✅ 完全支持 | 适配微信小程序环境 | | **H5** | ✅ 完全支持 | 支持浏览器访问 | | **Android App** | ✅ 完全支持 | 原生 Android 应用 | | **iOS App** | ✅ 完全支持 | 原生 iOS 应用 | | **Electron** | ✅ 实验支持 | 跨平台桌面应用 | ### 2. 🎯 Cursor AI 智能开发 内置 Cursor Rules 开发规则,AI 辅助编码: - **自动代码建议**:AI 按项目规范自动生成代码 - **代码质量审查**:实时检测代码问题并提供改进建议 - **最佳实践应用**:自动应用 Vue3 组合式 API 和简洁代码原则 - **智能注释**:生成有意义的代码注释 - **快速重构**:一键重构代码符合规范 - **团队协作**:统一的编码标准和规范 - **Context7 集成**:自动获取最新技术文档 - **开箱即用**:在 Cursor IDE 中打开即可使用 ### 3. 🎨 Vue3 组合式 API 全面采用 Vue3 最新特性: - **Composition API**:更灵活的代码组织方式 - **\ ``` ### 数据字典使用 ```vue ``` ### 条件编译 针对不同平台的差异化处理: ```vue ``` ### 列表页面开发 使用 z-paging 组件: ```vue ``` ### 富文本显示 使用 mp-html 组件: ```vue ``` ## Cursor Rules 智能开发 项目内置 Cursor AI 开发规则,提升开发效率和代码质量。 ### 规则配置 项目在 `.cursor/rules/` 目录下配置了以下规则文件: | 规则文件 | 说明 | 应用范围 | |---------|------|---------| | `common.mdc` | 通用开发规则 | 全局应用 | | `clean-code.mdc` | 简洁代码指南 | 所有代码文件 | | `codequality.mdc` | 代码质量规范 | 所有代码文件 | | `vue.mdc` | Vue 最佳实践 | Vue 文件 | | `vue-3-composition-api.mdc` | Vue3 组合式 API 指南 | Vue 文件 | | `vue-3-project-structure.mdc` | Vue3 项目结构规范 | 全局应用 | | `uniapp-project-structure.mdc` | UniApp 项目结构规范 | 全局应用 | ### 使用方式 **自动应用** 在 Cursor IDE 中打开项目,规则会自动生效: 1. **智能代码建议** - AI 助手会遵循项目规范生成代码 - 自动应用 Vue3 组合式 API 最佳实践 2. **代码审查** - AI 会根据规则检查代码质量 - 提供符合规范的改进建议 3. **快速开发** - 使用 `Ctrl+K`(或 `Cmd+K`)唤起 AI 助手 - 描述需求,AI 会按规则生成代码 **手动触发** 在 Cursor 中与 AI 对话时,提及规则名称: ``` 请按照 vue-3-composition-api 规则实现用户列表页面 遵循 clean-code 规范优化这段代码 ``` ### 规则优势 | 优势 | 说明 | |------|------| | 🎯 **一致性** | 团队成员使用统一的编码规范 | | ⚡ **效率** | AI 自动遵循最佳实践,减少返工 | | 📚 **知识传承** | 新成员快速了解项目标准 | | 🔍 **质量保障** | 代码审查自动化,减少低级错误 | | 🚀 **快速上手** | 开箱即用的智能开发体验 | ## 常见问题 ### 1. 如何切换后端接口地址? 修改 `config.js` 文件中的 `baseUrl`: ```javascript export default { baseUrl: 'https://your-api-domain.com', // ... } ``` ### 2. 微信小程序无法访问接口? 需要配置服务器域名白名单: 1. 登录微信公众平台 2. 开发 → 开发设置 → 服务器域名 3. 添加你的后端接口域名 ### 3. H5 跨域问题如何解决? 在 `manifest.json` 中配置代理: ```json { "h5": { "devServer": { "proxy": { "/api": { "target": "http://localhost:8087", "changeOrigin": true } } } } } ``` ### 4. 如何添加新页面? 1. 在 `pages/` 目录下创建页面文件 2. 在 `pages.json` 中注册页面: ```json { "pages": [ { "path": "pages/your-page/index", "style": { "navigationBarTitleText": "页面标题" } } ] } ``` ### 5. 如何使用 uni-ui 组件? 直接在模板中使用,无需导入: ```vue ``` ### 6. 如何调试小程序? 1. HBuilderX 中运行到小程序模拟器 2. 微信开发者工具会自动打开 3. 使用开发者工具的调试功能 ### 7. 如何自定义 TabBar? 在 `pages.json` 中配置: ```json { "tabBar": { "color": "#000000", "selectedColor": "#007AFF", "list": [ { "pagePath": "pages/index", "iconPath": "static/images/home.png", "selectedIconPath": "static/images/home_.png", "text": "首页" } ] } } ``` ### 8. 如何处理不同平台的差异? 使用条件编译: ```vue H5 端显示 小程序端显示 ``` ### 9. 如何实现下拉刷新? 使用 z-paging 组件自动处理,或使用 UniApp 内置方法: ```vue ``` ### 10. 如何上传图片? ```javascript uni.chooseImage({ count: 1, success: (res) => { uni.uploadFile({ url: 'http://your-api/upload', filePath: res.tempFilePaths[0], name: 'file', success: (uploadRes) => { console.log('上传成功', uploadRes) } }) } }) ``` ## 平台兼容性说明 ### 各平台特性支持 | 特性 | H5 | 小程序 | App | 说明 | |------|----|----|-----|------| | 网络请求 | ✅ | ✅ | ✅ | 完全支持 | | 文件上传 | ✅ | ✅ | ✅ | 完全支持 | | 本地存储 | ✅ | ✅ | ✅ | 完全支持 | | 定位 | ✅ | ✅ | ✅ | 需要权限 | | 相机 | ⚠️ | ✅ | ✅ | H5 部分浏览器支持 | | 扫码 | ❌ | ✅ | ✅ | H5 不支持 | | 支付 | ⚠️ | ✅ | ✅ | 需要对接支付平台 | | 分享 | ⚠️ | ✅ | ✅ | H5 需要浏览器支持 | ### 尺寸单位说明 - **rpx**:响应式单位,750rpx = 屏幕宽度 - **px**:固定像素单位 - **upx**:UniApp 推荐使用 rpx ## 性能优化建议 ### 1. 图片优化 - 使用合适的图片格式(WebP 优先) - 压缩图片大小 - 使用懒加载 ### 2. 分包加载 大型应用建议使用分包: ```json { "subPackages": [ { "root": "pages/module1", "pages": [ { "path": "page1/index" } ] } ] } ``` ### 3. 减少 setData 小程序中尽量减少 setData 的调用频率和数据量。 ### 4. 使用组件缓存 合理使用 keep-alive 和组件缓存。 ### 5. 避免过度渲染 使用 v-show 替代频繁切换的 v-if。 ## 部署说明 ### H5 部署 1. 构建生产版本: ```bash npm run build:h5 ``` 2. 部署 `unpackage/dist/build/h5` 目录到服务器 3. 配置 Nginx: ```nginx server { listen 80; server_name your-domain.com; location / { root /path/to/h5; try_files $uri $uri/ /index.html; } } ``` ### 小程序部署 1. HBuilderX 发行小程序 2. 微信开发者工具上传代码 3. 微信公众平台提交审核 4. 审核通过后发布 ### App 部署 1. HBuilderX 云打包 2. 下载安装包 3. 上传到应用商店 ## 更新日志 ### v1.2.0 (2024-XX-XX) - ✨ 新增 Cursor Rules 智能开发规则 - ✨ 升级到 Vue3 组合式 API - ✨ 集成 Pinia 状态管理 - ✨ 集成 z-paging 分页组件 - ✨ 集成 mp-html 富文本组件 - 🐛 修复已知问题 - 📝 完善文档说明 ### v1.0.0 (2024-XX-XX) - 🎉 项目初始化 - ✨ 实现基础功能模块 - ✨ 支持多端运行 ## 开源协议 本项目遵循 [ISC 协议](LICENSE) 开源。 ## 参与贡献 欢迎提交 Issue 和 Pull Request! 1. Fork 本仓库 2. 新建 Feat_xxx 分支 3. 提交代码 4. 新建 Pull Request ## 技术支持 - **官方文档**:http://doc.ruoyi.vip - **UniApp 文档**:https://uniapp.dcloud.net.cn/ - **Gitee**:https://gitee.com/mc-springboot/RuoYi-SpringBoot3-UniApp - **后端项目**:https://gitee.com/y_project/RuoYi-App/tree/vue3/ ## 鸣谢 - [RuoYi-App](https://gitee.com/y_project/RuoYi-App/tree/vue3/):后端管理框架 - [UniApp](https://uniapp.dcloud.net.cn/):跨平台框架 - [uni-ui](https://uniapp.dcloud.net.cn/component/uniui/uni-ui.html):UI 组件库 - [z-paging](https://z-paging.zxlee.cn/):分页组件 - [mp-html](https://jin-yufeng.github.io/mp-html/):富文本组件 --- ⭐ 如果觉得项目不错,请点个 Star 支持一下!