100 lines
2.6 KiB
Markdown
100 lines
2.6 KiB
Markdown
# 个人资料功能完整修复
|
|
|
|
## 问题原因
|
|
项目中有两个 `profile.vue` 文件:
|
|
1. `peidu/uniapp/user-package/pages/user/profile.vue` ⚠️ **旧文件,小程序在使用这个**
|
|
2. `peidu/uniapp/src/user-package/pages/user/profile.vue` ✅ 之前修改的文件
|
|
|
|
小程序实际使用的是旧文件,所以显示"功能待开发中"。
|
|
|
|
## ✅ 已完成的修改
|
|
|
|
### 修改文件
|
|
`peidu/uniapp/user-package/pages/user/profile.vue`
|
|
|
|
### 具体修改内容
|
|
|
|
#### 1. 添加 request 导入
|
|
```javascript
|
|
import { authApi } from '@/api/index.js'
|
|
import request from '@/utils/request' // 新增
|
|
```
|
|
|
|
#### 2. 实现头像上传功能
|
|
- 删除了"功能待开发中"提示
|
|
- 添加了完整的 `uploadAvatar` 方法
|
|
- 调用 `POST /api/user/upload-avatar` 接口
|
|
- 上传成功后更新头像显示
|
|
|
|
#### 3. 实现生日选择功能
|
|
- 删除了"功能待开发中"提示
|
|
- 添加了 `showDatePicker` 方法
|
|
- 支持 YYYY-MM-DD 格式输入
|
|
- 带格式验证
|
|
|
|
#### 4. 修改 loadUserInfo 方法
|
|
- 从 `authApi.getUserInfo()` 改为 `request.get('/api/user/profile')`
|
|
- 使用正确的后端接口
|
|
|
|
#### 5. 修改 saveProfile 方法
|
|
- 从 `authApi.updateUserInfo()` 改为 `request.put('/api/user/profile')`
|
|
- 使用正确的后端接口
|
|
- 保存成功后更新本地存储
|
|
- 1.5秒后自动返回上一页
|
|
|
|
## 🎯 功能状态
|
|
|
|
### ✅ 已完成
|
|
1. **头像上传** - 完整实现
|
|
2. **昵称修改** - 弹窗输入
|
|
3. **性别选择** - 下拉选择
|
|
4. **生日选择** - 输入框实现
|
|
5. **保存修改** - 调用API保存
|
|
|
|
### ⚠️ 显示"功能开发中"
|
|
1. **地区选择** - 数据库没有对应字段
|
|
2. **实名认证** - 需要对接第三方API
|
|
|
|
## 📋 后端接口
|
|
|
|
### 已添加的接口
|
|
1. `POST /api/user/upload-avatar` - 头像上传
|
|
2. `GET /api/user/profile` - 获取个人资料
|
|
3. `PUT /api/user/profile` - 更新个人资料
|
|
|
|
## 🚀 测试步骤
|
|
|
|
### 1. 重新编译前端
|
|
前端会自动检测文件变化并重新编译
|
|
|
|
### 2. 测试头像上传
|
|
1. 点击头像
|
|
2. 选择图片
|
|
3. 等待上传
|
|
4. 查看是否显示"头像上传成功"
|
|
5. 点击"保存修改"
|
|
|
|
### 3. 测试生日选择
|
|
1. 点击"生日"行
|
|
2. 输入日期(如: 2000-01-01)
|
|
3. 点击确定
|
|
4. 查看是否显示"生日已设置"
|
|
5. 点击"保存修改"
|
|
|
|
### 4. 测试其他功能
|
|
- 修改昵称
|
|
- 选择性别
|
|
- 保存修改
|
|
|
|
## ⚠️ 注意事项
|
|
|
|
1. **后端必须已重启** - 确保头像上传接口生效
|
|
2. **前端自动编译** - 保存文件后会自动重新编译
|
|
3. **清除缓存** - 如果还是显示旧版本,尝试清除小程序缓存
|
|
|
|
## 📅 完成时间
|
|
2026-01-28
|
|
|
|
## 👤 修复人员
|
|
Kiro AI Assistant
|