学习伴侣App v2.0升级开发记录 - 品牌重命名与功能扩展
学习伴侣App v2.0升级开发记录
📋 更新概述
本次更新于 2026-02-10 完成,将”考研伴侣”正式升级为通用的”学习伴侣”应用,同时大幅扩展了成就系统和积分奖励系统。
GitHub 仓库:https://github.com/dafenqirunrunrun/love-study-app
🎯 核心更新
| 更新项 | 更新前 | 更新后 |
|---|---|---|
| 应用名称 | 考研伴侣 | 学习伴侣 |
| 成就数量 | 15个 | 50个 |
| 可兑换奖励 | 6个 | 20个 |
| 默认倒计时 | 2025-12-21 | 2026-12-21 |
🚀 完成的功能更新
1. 品牌重命名
将应用从”考研伴侣”重命名为”学习伴侣”,使其适用于任何学习目标:
1.1 修改的文件
| 文件路径 | 修改内容 |
|---|---|
index.html |
页面标题从”考研伴侣”改为”学习伴侣” |
src/components/Layout.vue |
品牌名称显示 |
src/components/MoreMenu.vue |
用户区域名称 |
src/router/index.js |
页面标题meta |
src/views/Home.vue |
默认倒计时目标名 |
src/views/Settings.vue |
关于名称、默认倒计时、备份文件名 |
src/components/LearningPlanWizard.vue |
步骤描述文字 |
src/composables/useLearningPlanGenerator.ts |
注释文字 |
src/views/LearningPlanManager.vue |
页面描述 |
src/views/PointsCenter.vue |
虚拟宠物名称 |
1.2 代码示例
1 | // Settings.vue - 修改前 |
2. 成就系统扩展(15个 → 50个)
2.1 新增成就类别
| 类别 | 数量 | 说明 |
|---|---|---|
| 任务成就 | 7个 | 完成1/10/50/100/200/500/1000个任务 |
| 专注成就 | 9个 | 1/10/50/100/200次专注 + 10/50/100/500小时 |
| 打卡成就 | 7个 | 3/7/14/30/60/100/365天连续打卡 |
| 积分成就 | 6个 | 100/500/1000/2000/5000/10000积分 |
| 心得成就 | 3个 | 撰写1/10/30篇学习心得 |
| 里程碑成就 | 4个 | 累计学习7/30/100/365天 |
| 习惯成就 | 2个 | 完美一周、完美一月 |
| 特殊成就 | 3个 | 早起鸟儿、夜猫子、全能选手 |
2.2 成就数据结构
1 | // Achievements.vue - 成就定义示例 |
2.3 解锁判断逻辑
1 | // Achievements.vue - isUnlocked 函数 |
2.4 新增计算属性
1 | // 完美一周统计 |
3. 积分奖励扩充(6个 → 20个)
3.1 完整奖励列表
| 积分 | 图标 | 名称 | 描述 |
|---|---|---|---|
| 50 | 🍦 | 冰淇淋 | 清凉一夏,甜蜜小确幸 |
| 80 | ☕ | 咖啡一杯 | 提神醒脑,继续加油 |
| 100 | 🥤 | 奶茶一杯 | 甜蜜的奶茶,犒劳努力的自己 |
| 150 | 🍰 | 蛋糕一份 | 美味甜点,补充能量 |
| 180 | 🍔 | 汉堡套餐 | 快餐自由,大快朵颐 |
| 200 | 🍕 | 披萨一份 | 芝士拉丝,满足味蕾 |
| 250 | 🍵 | 下午茶 | 悠闲时光,放松片刻 |
| 300 | 🎬 | 看电影约会 | 和恋人一起看场电影 |
| 350 | 🎰 | 盲盒一个 | 惊喜与期待并存 |
| 400 | 💆 | 按摩一次 | 放松身心,缓解疲劳 |
| 500 | 🎁 | 神秘礼物 | 给对方准备的神秘惊喜 |
| 550 | 🎭 | 剧本杀 | 沉浸式体验,换个身份 |
| 600 | 🔐 | 密室逃脱 | 烧脑刺激,团队协作 |
| 600 | 🍽️ | 美食大餐 | 吃一顿好的庆祝进步 |
| 800 | 🚗 | 短途旅行 | 换个城市,换种心情 |
| 1000 | 🎤 | 演唱会门票 | 近距离感受音乐魅力 |
| 1200 | 🎢 | 游乐园一日 | 重拾童年的快乐 |
| 1500 | 🧖 | SPA水疗 | 极致放松,焕发活力 |
| 2000 | 💎 | 奢侈品 | 犒劳自己的努力成果 |
| 5000 | 🌍 | 环球旅行 | 世界那么大,想去看看 |
3.2 代码实现
1 | // PointsCenter.vue - rewards 数组 |
4. README.md 全面更新
4.1 新增章节
- 功能特色 - 分类展示所有功能
- 设计特点 - 视觉设计和UI组件说明
- 版本更新日志 - v2.0更新日志
4.2 README 更新内容概览
1 | # 学习伴侣 (Study Companion) - 全能学习助手 |
📊 Git 提交记录
| 提交ID | 消息 | 说明 |
|---|---|---|
88ea1e2 |
docs: update README with all new features v2.0 | README全面更新 |
48d7368 |
feat: expand rewards from 6 to 20 items | 奖励扩充至20个 |
4dd46cc |
feat: 考研伴侣→学习伴侣 rebranding + 50 achievements | 品牌重命名+50成就 |
f06d1d6 |
fix: 优化字体颜色适配日间/夜间模式 | 日间模式优化 |
🔧 技术实现要点
1. 成就进度计算
使用 Vue 的 computed 实现响应式进度计算:
1 | // 任务进度 |
2. 动态解锁判断
1 | // 统一的解锁判断函数 |
3. 奖励积分范围设计
| 积分范围 | 奖励类型 |
|---|---|
| 50-200 | 小确幸(冰淇淋、咖啡、奶茶、蛋糕等) |
| 250-400 | 休闲娱乐(下午茶、电影、盲盒、按摩) |
| 500-800 | 社交娱乐(神秘礼物、剧本杀、密室、短途旅行) |
| 1000-2000 | 高级享受(演唱会、游乐园、SPA、奢侈品) |
| 5000 | 终极目标(环球旅行) |
📱 UI/UX 改进
1. 成就卡片设计
1 | <div class="badge-card" :class="{ 'unlocked': isUnlocked(badge.id) }"> |
2. 奖励卡片布局
1 | <div class="reward-grid"> |
🧪 测试验证
构建测试
1 | $ npm run build |
Git 推送验证
1 | $ git push origin master |
📈 性能优化
1. 成就计算优化
- 使用
computed缓存计算结果 - 避免不必要的重复计算
- 懒加载 LocalStorage 数据
2. 奖励渲染优化
- 虚拟滚动支持(大量奖励时)
- 条件渲染减少DOM节点
- CSS 硬件加速动画
🎨 设计规范
1. 颜色系统
| 用途 | 颜色 | 说明 |
|---|---|---|
| 主色 | #f97316 (orange-500) |
橙色渐变起点 |
| 辅助色 | #f472b6 (pink-500) |
粉色渐变终点 |
| 成功色 | #22c55e (green-500) |
解锁成功 |
| 警告色 | #fbbf24 (amber-500) |
进度提醒 |
| 背景 | rgba(255,255,255,0.25) |
玻璃拟态 |
2. 动画效果
1 | /* 解锁动画 */ |
📦 依赖更新
本次更新未引入新依赖,所有功能均使用现有技术栈实现:
| 依赖 | 版本 | 用途 |
|---|---|---|
| vue | 3.x | 核心框架 |
| vue-router | 4.x | 路由管理 |
| vite | 5.x | 构建工具 |
| tailwindcss | 3.x | 样式框架 |
🔮 后续优化方向
- 添加成就解锁动画
- 支持成就分享功能
- 添加稀有成就系统
- 支持自定义成就
- 成就徽章收集展示页
- 支持云端同步成就数据
📚 参考资料
开发感悟:本次v2.0升级是应用从”考研伴侣”到”学习伴侣”的重要里程碑。通过品牌重命名和功能扩展,应用现在可以服务于更广泛的学习群体。50个成就和20种奖励的设计,为用户提供了清晰的学习目标和强大的激励体系。
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来源 达芬奇的博客!
评论


