# 更新日志
## 2026-04-24 - 协议弹窗功能
### ✨ 新增功能
#### 1. 用户协议和隐私政策改为弹窗展示
- 点击《用户协议》链接 → 弹出用户协议内容
- 点击《隐私政策》链接 → 弹出隐私政策内容
- 弹窗从底部滑出,带动画效果
- 支持滚动查看完整内容
- 点击遮罩层或关闭按钮关闭弹窗
### 🎨 UI 特性
**弹窗设计:**
- 半屏高度(最大 80vh)
- 圆角设计(32rpx)
- 半透明遮罩(rgba(0,0,0,0.5))
- 滑入动画(slideUp)
- 固定底部定位
**弹窗结构:**
```
┌─────────────────────────────┐
│ 用户协议 ✕ │ ← 标题栏 + 关闭按钮
├─────────────────────────────┤
│ │
│ 协议内容(可滚动) │
│ │
│ │
├─────────────────────────────┤
│ [我已知晓] 按钮 │ ← 底部操作栏
└─────────────────────────────┘
```
### 📁 文件变更
**修改的文件:**
- `pages/login/login.vue` - 添加弹窗组件和内容
**删除的文件:**
- `pages/agreement/user.vue` - 用户协议页(已删除)
- `pages/agreement/privacy.vue` - 隐私政策页(已删除)
**更新的配置:**
- `pages.json` - 移除协议页面路由
### 🎯 使用方式
```html
登录即代表您已同意
《用户协议》
与
《隐私政策》
```
### 🔧 代码逻辑
```javascript
// 显示用户协议
const showUserAgreement = () => {
showUserAgreementPopup.value = true
}
// 关闭用户协议
const closeUserAgreement = () => {
showUserAgreementPopup.value = false
}
// 显示隐私政策
const showPrivacyPolicy = () => {
showPrivacyPolicyPopup.value = true
}
// 关闭隐私政策
const closePrivacyPolicy = () => {
showPrivacyPolicyPopup.value = false
}
```
### 📱 用户体验提升
**之前(独立页面):**
- ❌ 需要跳转到新页面
- ❌ 需要返回按钮回到登录页
- ❌ 流程中断感强
**现在(弹窗形式):**
- ✅ 在当前页面直接查看
- ✅ 关闭后继续登录流程
- ✅ 体验更流畅自然
### ⚠️ 注意事项
1. 弹窗使用 `position: fixed` 定位
2. 点击遮罩层可关闭弹窗
3. 弹窗内容区域可滚动
4. 底部按钮固定在弹窗底部
### 🚀 下一步建议
1. ✅ 协议弹窗功能完成
2. ⬜ 添加"同意协议"勾选框
3. ⬜ 协议内容支持富文本渲染
4. ⬜ 协议版本更新提示
5. ⬜ 协议内容从接口获取
---
## 2026-04-24 - 初始化加载页
### ✨ 新增功能
- 创建 Splash 启动页
- 登录逻辑移到启动页检查
- 添加加载动画效果
### 📁 新增文件
- `pages/splash/splash.vue`
- `pages/test/debug.vue`
---
## 2026-04-24 - 登录功能实现
### ✨ 初始版本
- 完整的登录流程
- 用户缓存管理
- API 请求封装
- 自动登录检查