peixue-dev/peidu/uniapp/README.md

320 lines
6.1 KiB
Markdown
Raw Normal View History

# 陪读服务平台 - 小程序/App端
## 技术栈
- uni-app
- Vue 3 + Composition API
- Pinia (状态管理)
- uni-ui (UI组件库)
- uView UI (可选)
## 支持平台
- 微信小程序
- App (iOS/Android)
- H5 (可选)
## 项目结构
```
uniapp/
├── api/ # API接口
│ └── index.js
├── components/ # 公共组件
│ ├── service-card/ # 服务卡片
│ ├── teacher-card/ # 教师卡片
│ └── order-item/ # 订单项
├── pages/ # 页面
│ ├── index/ # 首页
│ ├── service/ # 服务相关
│ │ ├── list.vue # 服务列表
│ │ └── detail.vue # 服务详情
│ ├── teacher/ # 教师相关
│ │ ├── list.vue # 教师列表
│ │ └── detail.vue # 教师详情
│ ├── order/ # 订单相关
│ │ ├── create.vue # 创建订单
│ │ ├── list.vue # 订单列表
│ │ └── detail.vue # 订单详情
│ ├── user/ # 用户中心
│ │ ├── index.vue # 个人中心
│ │ ├── profile.vue # 个人资料
│ │ ├── student.vue # 学生管理
│ │ └── coupon.vue # 优惠券
│ └── teacher-center/ # 教师中心
│ ├── index.vue # 教师首页
│ ├── orders.vue # 订单管理
│ ├── schedule.vue # 时间管理
│ └── earnings.vue # 收益管理
├── static/ # 静态资源
│ ├── images/
│ └── css/
│ └── common.scss
├── store/ # 状态管理
│ ├── user.js
│ └── app.js
├── utils/ # 工具函数
│ ├── request.js # 请求封装
│ ├── auth.js # 认证相关
│ └── util.js # 通用工具
├── App.vue
├── main.js
├── manifest.json # 应用配置
├── pages.json # 页面配置
└── uni.scss # 全局样式变量
```
## 环境要求
- HBuilderX 3.6+
- 微信开发者工具 (微信小程序)
- Node.js 16+ (使用 CLI 开发)
## 开发方式
### 方式一HBuilderX
1. 使用 HBuilderX 打开项目
2. 运行 -> 运行到小程序模拟器 -> 微信开发者工具
3. 或运行到手机或模拟器
### 方式二CLI
1. 安装依赖
```bash
npm install
```
2. 运行到微信小程序
```bash
npm run dev:mp-weixin
```
3. 运行到 App
```bash
npm run dev:app
```
4. 运行到 H5
```bash
npm run dev:h5
```
## 配置说明
### API 地址配置
编辑 `utils/request.js`:
```javascript
const baseURL = process.env.NODE_ENV === 'development'
? 'http://192.168.1.50:8080/api'
: 'https://api.peidu.com/api'
```
### 微信小程序配置
1. 在微信公众平台配置服务器域名
2. 配置支付相关参数
3. 配置用户隐私保护指引
编辑 `manifest.json`:
```json
{
"mp-weixin": {
"appid": "your_appid",
"setting": {
"urlCheck": false
}
}
}
```
## 核心功能
### 用户端功能
#### 1. 首页
- 轮播图展示
- 服务分类导航
- 推荐教师
- 热门服务
#### 2. 服务浏览
- 服务列表(支持筛选)
- 服务详情
- 教师信息
- 用户评价
#### 3. 预约下单
- 选择学生
- 选择时间
- 选择优惠券
- 在线支付
#### 4. 订单管理
- 订单列表(待支付、待服务、已完成)
- 订单详情
- 取消订单
- 申请退款
- 订单评价
#### 5. 个人中心
- 个人信息
- 学生管理
- 我的订单
- 我的优惠券
- 学习记录
- 设置
### 教师端功能
#### 1. 教师中心
- 收益概览
- 订单统计
- 待处理订单
#### 2. 订单管理
- 订单列表
- 订单详情
- 扫码核销
- 填写学习记录
#### 3. 时间管理
- 设置可预约时间
- 查看预约情况
#### 4. 收益管理
- 收益明细
- 提现申请
- 提现记录
## 页面路由
主要页面路由配置在 `pages.json`:
```json
{
"pages": [
{
"path": "pages/index/index",
"style": { "navigationBarTitleText": "首页" }
},
{
"path": "pages/service/list",
"style": { "navigationBarTitleText": "服务列表" }
},
{
"path": "pages/order/create",
"style": { "navigationBarTitleText": "确认订单" }
},
{
"path": "pages/user/index",
"style": { "navigationBarTitleText": "个人中心" }
}
],
"tabBar": {
"list": [
{
"pagePath": "pages/index/index",
"text": "首页"
},
{
"pagePath": "pages/service/list",
"text": "服务"
},
{
"pagePath": "pages/order/list",
"text": "订单"
},
{
"pagePath": "pages/user/index",
"text": "我的"
}
]
}
}
```
## 开发规范
### 代码规范
- 使用 Composition API
- 组件使用 PascalCase 命名
- 页面使用 kebab-case 命名
- 必要的注释
### 样式规范
- 使用 rpx 单位
- 遵循设计稿尺寸750rpx
- 使用全局样式变量
### API 调用规范
- 统一使用 api/index.js 中的方法
- 错误统一处理
- Loading 提示
## 构建发布
### 微信小程序
1. 使用 HBuilderX 或 CLI 构建
```bash
npm run build:mp-weixin
```
2. 使用微信开发者工具打开 `dist/dev/mp-weixin``dist/build/mp-weixin`
3. 上传代码到微信公众平台
4. 提交审核
### App
1. 配置证书和打包信息
2. 云打包或本地打包
```bash
npm run build:app
```
3. 生成安装包
## 常见问题
### 微信小程序真机预览白屏
检查服务器域名是否配置API 地址是否正确
### 支付失败
检查支付配置,商户号是否正确
### 图片不显示
检查图片路径,确保使用正确的域名
### 请求超时
检查网络连接,后端服务是否正常
## 性能优化
- 图片懒加载
- 分包加载
- 请求缓存
- 防抖节流
## 测试
### 微信小程序测试
- 真机调试
- 体验版测试
- 不同机型适配
### App 测试
- iOS 真机测试
- Android 真机测试
- 不同系统版本测试
## 联系方式
如有问题,请联系开发团队