1. 项目概述
这个项目是一个融合了ThinkPHP后端框架、Vue.js前端框架的个人健康管理小程序,主要面向有健康管理需求的普通用户。作为一个全栈项目,它实现了从数据存储、业务逻辑到用户交互的完整闭环。我在实际开发中发现,这类健康管理工具的核心价值在于将专业的运动饮食知识转化为普通人可执行的日常方案。
小程序采用前后端分离架构,后端使用ThinkPHP 6.0提供RESTful API接口,前端采用Vue 3 + Vant Weapp组件库开发微信小程序界面。数据库选用MySQL 8.0存储用户健康数据,Redis作为缓存层提升性能。这种技术组合既保证了开发效率,又能满足健康类应用对数据实时性的要求。
需要模型API调用? 免费领10W Token,多模型网关一键接入 Claude、DeepSeek 等主流模型。
2. 核心功能设计
2.1 健康数据追踪模块
采用三表结构设计:
- 用户基础表(user_base):存储身高、体重、年龄等静态数据
- 每日记录表(daily_records):记录步数、睡眠等动态数据
- 饮食记录表(food_log):采用JSON格式存储餐食详情
php复制// ThinkPHP模型示例
class DailyRecord extends Model
{
protected $json = ['exercise_details']; // 使用JSON字段存储运动详情
public function user()
{
return $this->belongsTo(User::class);
}
}
提示:JSON字段设计可以灵活适应不同用户的记录需求,但要注意设置合理的索引策略
2.2 知识科普系统
实现方案:
- 使用Markdown存储科普文章内容
- 开发后台编辑器支持图文混排
- 前端通过marked.js解析渲染
- 增加阅读进度追踪功能
javascript复制// Vue组件示例
<template>
<div v-html="compiledMarkdown"></div>
</template>
<script>
import marked from 'marked';
export default {
computed: {
compiledMarkdown() {
return marked(this.content);
}
}
}
</script>
2.3 智能推荐引擎
基于用户数据实现:
- 运动建议算法:根据BMI和运动习惯推荐
- 饮食推荐模型:考虑热量缺口和营养均衡
- 使用协同过滤算法实现"相似用户也在看"功能
3. 关键技术实现
3.1 微信小程序登录流程
完整OAuth2.0实现步骤:
- 前端调用wx.login获取code
