从 0 到 1 实现CloudBase云开发 + 低代码全栈开发活动管理小程序(01)

58 阅读4分钟

第 1 章:项目概览与需求分析

“不要为了技术而技术,要为了解决问题而写代码。”

在开始敲下第一行 console.log("Hello World") 之前,我们需要先坐下来,喝杯茶,聊聊我们到底要造一个什么样的轮子。

1.1 我们要做什么?(Project Scope)

一句话介绍:本项目是一个基于云开发的全栈低代码活动宣传项目与管理平台。

痛点场景: 想象一下,你是大学社团的社长,或者是公司行政的小姐姐/小哥哥,每次组织活动时:

  1. 宣传难:发朋友圈只有干巴巴的文字,或者要做海报还得求设计同学。
  2. 报名乱:用微信群接龙,信息刷屏;用纸质表单,字迹潦草还容易丢。
  3. 收钱烦:聚餐需要AA收款,几十个人的转账截图发到群里,对账对到眼瞎。
  4. 互动少:活动现场气氛冷清,想搞个投票评选,发现没有好用的工具。

解决方案: 我们要做的小程序,就是为了解决以上所有问题。它允许你:

  • 📱 创建活动:像搭积木一样拖拽生成精美的活动页面。
  • 📝 自定义报名:想收什么信息(姓名、电话、学号)自己配,还支持上传支付截图。
  • 🗳️ 投票互动:现场搞个“最佳歌手”投票,实时看排名。
  • 📊 后台管理:抛弃笨重的 PC 后台,手机在手,天下我有。审核、核销、看数据,躺在床上也能办。

1.2 核心功能拆解

我们将系统功能拆解为四大核心模块:

1. 活动展示与推广

  • 活动列表:按时间排序,支持搜索和状态筛选(进行中/已结束)。
  • 活动详情页
    • 沉浸式体验:自动播放背景音乐 (BGM)。
    • 富媒体展示:支持图片、视频、富文本介绍。
    • 海报生成:一键生成带小程序码的精美海报,方便朋友圈装X。

2. 报名管理系统

  • 动态表单:主办方配置表单项,用户填写。
  • 支付凭证核销
    • 用户:填写报名信息 -> 上传转账截图 -> 提交。
    • 管理员:后台查看截图 -> 点击“通过”或“拒绝”。
  • 状态流转:待审核 -> 已通过/已拒绝。

3. 投票互动系统

  • 图文投票:支持为候选项上传图片和描述。
  • 防刷机制:限制每个用户的投票次数。
  • 实时统计:投票后立即更新排名。

4. 管理员后台

  • 移动端管理:不用打开电脑,手机小程序里直接管理。
  • 数据看板:查看浏览量、报名人数、投票数。
  • 权限控制:只有创建者或超级管理员才能操作。
  • (注):本项目专注于移动端体验,所有管理操作均在小程序内完成,暂不涉及 PC 端导出 Excel 等功能(毕竟谁想在周末还打开 Excel 呢?)。

1.3 技术选型的艺术

为什么选择这套技术栈?因为我们是“实用主义者”。

技术层选型理由
前端框架UniApp (Vue3 + TS)一套代码,多端运行(微信/H5)。Vue3 的组合式 API 写起来很爽,TS 保证了代码的健壮性。
UI 组件库Wot Design Uni颜值高,组件全,不仅好用,还好看。
后端服务腾讯云 CloudBaseServerless 才是独立开发者的终极归宿。无需运维服务器,无需配置 Nginx,按量付费,原生集成微信生态。
数据库MySQL稳重、可靠、成熟。虽然 NoSQL 很火,但关系型数据库在事务处理和数据一致性上的安全感,是谁也给不了的。
构建工具Vite快,很快,非常快。
代码规范ESLint + Prettier保持代码整洁,强迫症福音。

1.4 项目结构一览 (Project Structure)

打开项目文件夹,你会看到这样的结构。别慌,我们一个个来认识:

.
├── src/
│   ├── api/            # 📞 与云函数通话的“电话线” (API接口)
│   ├── components/     # 🧩 公共组件库
│   │   ├── ActivityDesign/ # ✨ [核心] 活动页面可视化编辑器组件
│   │   └── ...
│   ├── pages/          # 📱 页面文件
│   │   ├── activity/       # 活动详情、海报、表单
│   │   ├── registration/   # 报名记录列表
│   │   └── ...
│   ├── stores/         # 🏪 Pinia 状态仓库 (用户信息、配置)
│   ├── types/          # 🦕 TypeScript 类型定义
│   └── utils/          # 🛠️ 工具箱 (日期格式化、正则校验)
├── server/             # ☁️ 云函数大本营
│   ├── activity/       # 活动服务 (增删改查)
│   ├── auth/           # 身份验证服务
│   ├── registration/   # 报名服务
│   └── vote/           # 投票服务
└── docs/               # 📚 你现在看到的这本小册

本章小结: 我们明确了项目的目标——做一个高颜值、低成本、全功能的活动管理小程序。我们也确定了作战武器——UniApp + CloudBase。下一章,我们将穿上装备,搭建开发环境,准备开工!

下一章(02-开发环境搭建)