当前位置: 首页 > news >正文

篮球口袋教练 HarmonyOS 学习应用(05):练习记录与体能训练计划

“今天练了什么”只有在能回看、能统计时才有价值。篮球口袋教练将练习记录作为独立数据项保存,练习页负责录入与展示,统计页从同一组记录计算总次数、总时长、平均评分和本周次数。训练计划则作为课程内容提供方法,不与用户实际完成记录混为一谈。

一、记录模型保存一次训练的事实

练习记录至少包含类型、内容、时长、评分和时间。保存时由服务读取现有列表、追加新记录,再同步更新响应式状态和持久化数据;页面刷新不需要重新拼装不同来源的临时变量。

static add(log: PracticeLog): void { const logs = PracticeLogService.all() logs.unshift(log) AppStorage.setOrCreate(StorageKeys.PRACTICE_LOGS, logs) PreferencesHelper.get().persist(StorageKeys.PRACTICE_LOGS, logs) }
数据用途不能替代什么
练习类型与内容说明训练做了什么不是课程完成状态
时长汇总训练投入不是视频播放时长
满意度回顾主观感受不是考试成绩
时间戳计算本周和历史统计不是训练计划日期

二、计划内容与实际记录各司其职

体能训练课程给出“一周训练安排”的方法:2 天技术、2 天体能、1 天实战、1 天投篮、1 天恢复。它帮助用户安排节奏,但不会自动生成练习记录。只有用户保存真实训练内容,统计页面才增加次数和时长。

这种区分避免了一个常见误导:用户看过计划,不等于已经完成计划;用户新增一条记录,也不等于完成整周安排。两种数据保留各自的含义,复盘时才不会把建议当成事实。

三、运行回读的记录链路

模拟器中新增并保存了一条“体能训练”记录,内容为“核心力量与折返跑训练”,时长 30 分钟,满意度 3 星。重启应用后,练习记录页回读到总次数 1、总时长 30 分钟、平均评分 3.0、本周 1 次和完整记录卡片。由此可知该记录不是仅存在于当前页面内存。

四、为什么统计应从原始记录计算

总次数、总时长和平均评分都是派生结果。若把它们和原始记录分别保存,删除或修正一条记录时容易发生不一致。更稳妥的方式是保存原始日志,在需要展示时按统一规则计算汇总;空列表则返回清晰的零值和空状态。

const totalMinutes = logs.reduce((sum, item) => sum + item.duration, 0) const averageRating = logs.length === 0 ? 0 : logs.reduce((sum, item) => sum + item.rating, 0) / logs.length

练习记录解决的是“已经做过什么”,训练计划解决的是“接下来如何安排”。当这两条线在界面上并列而不混写时,用户才能既看见建议,也看见属于自己的真实训练轨迹。

http://www.jsqmd.com/news/1281577/

相关文章:

  • AGI还会远么,它何时到来?
  • NodeJS第1天--介绍
  • 如何在10分钟内完成Honey Select 2完整汉化去码:终极一站式解决方案
  • 2026最新测评:10款真正能落地的写小说软件(含防坑指南)
  • Ryujinx模拟器终极指南:3步在PC上畅玩Switch独占大作
  • Adobe Illustrator脚本终极指南:70+专业工具解锁设计效率新维度
  • NBM5100A与STM32F732IE的低功耗物联网电源管理方案
  • MobaXterm密码安全解析:Python实战解密与安全风险防范
  • 明日方舟桌宠Ark-Pets:3分钟让你的游戏角色“活“在桌面上
  • JAVA计算机毕设之基于SpringBoot的眼科病患复查提醒与诊疗跟踪管理系统 信息化眼科患者全程诊疗随访管理系统(完整前后端代码+说明文档+LW,调试定制等)
  • MATLAB实现牛头刨床运动学仿真与急回特性分析
  • Opus 5与Fable模型对比:Conductor平台集成与成本优化实践
  • 环保AI部署失败率高达68%?(一线工程师血泪复盘:模型漂移、边缘算力瓶颈与合规红线全拆解)
  • Python3.7 高级编程之 async/await asyncio 通过任务gather并发运行协程
  • 3分钟解锁Windows全功能:KMS_VL_ALL_AIO智能技术赋能方案
  • 跨境电商GEO系统开发:精准广告投放与用户画像构建
  • OpenSees安装验证与TCL测试脚本指南
  • 2026血流动力传感器行业全景:全球市场格局与核心赛道解析
  • 能源监测管理平台的案例解析
  • AI大模型即将来袭!小白也能抓住风口,收藏这份入门指南
  • 2026 年 7 月常德旧黄金回收哪家靠谱?本地实体金条铂金变现、上门回收详解 - 城刊速递
  • 物联网设备硬件级安全方案与SE050应用实践
  • java.lang.NoSuchMethodException: tk.mybatis.mapper.provider.base.BaseSelectProvider.init() 错误记录
  • 客制化键盘终极指南:从轴体、键帽到Gasket结构,打造你的专属输入工具
  • 2026随身WiFi性价比深度剖析:避坑实测推荐与全档位品牌选购对比指南 - 博客万
  • NBM5100A与STM32F215ZG的低功耗物联网设计优化
  • 终极智能文件去重工具:5分钟快速清理重复文件,释放50%存储空间
  • 2026.7月徐汇持证防水补漏商家权威TOP3榜单 卫生间厨房外墙屋面天花板漏水检测靠谱师傅维修指南 - 超人防水
  • Transformer架构解析:从自注意力机制到视觉应用实践
  • 二分查找及其变种