peixue-dev/peidu/uniapp/README.md

320 lines
6.1 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# 陪读服务平台 - 小程序/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 真机测试
- 不同系统版本测试
## 联系方式
如有问题,请联系开发团队