练习-模拟选科

  1. 需求分析
  2. 技术方案选型
  3. 数据模型设计
  4. 路由和API设计
  5. 开发页面功能

1. 需求分析

理解需求,流程,梳理功能

  • 微信授权,获取用户头像和昵称
  • 保存用户选择的科目
  • 获取出所有热门科目
  • 模拟微信分享,建立关系
  • 需要用户完成相应的任务

2. 技术方案选型

根据功能点,来制定前端与后端的技术方案,搭建基础项目

前端

  • vue
  • 微信SDK

后端

  • egg
  • mysql

3. 数据模型设计

设计数据、表关联

  • 用户表
  • 选择的科目表
  • 分享关系表

用户表simulation_subject_user

字段名称类型说明
openidvarchar用户的唯一标识
nick_namevarchar用户昵称
head_img_urlvarchar用户头像
schoolvarchar在读学校
emailvarchar邮箱

选择的科目表simulation_subject_choose

字段名称类型说明
user_idvarchar用户id,对应openid
subjectvarchar选择的科目
majorvarchar选择的专业

分享关系表simulation_subject_share

字段名称类型说明
user_idvarchar用户id,对应openid
share_idvarchar分享人id,通过它注册

4. 页面路由和API设计

确定页面和接口,以及之间的关系

页面路由

  • /home
  • /login
  • /start
  • /hot
  • /share
  • /mail
  • /success

API接口

  • 授权、登录/login
  • 获取用户信息接口/getUserInfo
  • 保存选择的科目/putSubject
  • 获取热门数据/getHotSubject
  • 获取分享数据/getShareData
  • 提交邮箱/putEmail

5. 开发页面功能

开发每个页面的具体功能

home

  • 去授权
Last Updated: 2022/3/15 17:23:06
Contributors: 黎聪