一款功能完善、界面美观的微信小程序任务管理应用,支持任务创建、编辑、完成、统计、日历视图等功能,并集成了用户登录、头像修改和云端任务同步等高级功能。
- 📝 任务管理 - 创建、编辑、删除任务
- ✅ 任务完成 - 一键标记任务完成/未完成
- 🎨 优先级设置 - 支持 高/中/低 三个优先级
- 📅 截止日期 - 为任务设置截止日期
- 📊 任务统计 - 查看任务完成情况和优先级分布
- 📆 日历视图 - 按日期查看和管理任务
- 👤 用户登录 - 微信授权登录,安全可靠
- 🖼️ 头像管理 - 支持自定义头像,Base64存储不占用云存储空间
- ☁️ 云端同步 - 任务数据云端存储,登录自动恢复
- 🔒 数据隔离 - 用户数据完全隔离,安全隐私
- 📤 数据导出 - 支持任务数据导出为JSON
- 📥 数据导入 - 支持从JSON导入任务数据
- 🚀 云开发 - 基于微信云开发,无需搭建服务器
- 📱 原生开发 - 微信小程序原生开发,性能优秀
- 💾 本地缓存 - 本地存储+云端同步,双重保障
- 🎯 自定义Tabbar - 精美的自定义底部导航栏
- 🔄 实时更新 - 数据修改实时同步显示
- 任务列表展示
- 快速筛选(全部/进行中/已完成)
- 优先级标签(红色-高,黄色-中,绿色-低)
- 按日期展示任务
- 直观查看每日任务数量
- 点击日期快速筛选任务
- 任务完成情况统计
- 优先级分布饼图
- 完成率展示
- 用户头像和昵称显示
- 登录/退出功能
- 任务数据统计
- 快捷操作入口
- 微信小程序原生框架
- WXML - 页面结构
- WXSS - 页面样式
- JavaScript - 业务逻辑
- 自定义组件 - 自定义Tabbar
- 微信云开发
- 云函数 - 7个云函数处理业务逻辑
- 云数据库 - 3个数据库集合存储数据
- 云存储 - 头像存储(可选)
- 本地存储 - 持久化用户数据和任务
- 服务封装 - userService、taskService、storage
- Promise封装 - 异步操作统一处理
Task Master/
├── app.js # 小程序主入口
├── app.json # 全局配置
├── app.wxss # 全局样式
├── project.config.json # 项目配置
├── sitemap.json # 站点地图
├── cloudfunctions/ # 云函数目录
│ ├── login/ # 用户登录
│ ├── uploadAvatar/ # 头像上传
│ ├── updateProfile/ # 更新用户资料
│ ├── validateAvatar/ # 头像验证
│ ├── userOperation/ # 用户操作
│ ├── syncTasks/ # 同步任务到云端
│ ├── pullTasks/ # 从云端拉取任务
│ └── database_rules/ # 数据库安全规则
├── custom-tab-bar/ # 自定义Tabbar
├── pages/ # 页面目录
│ ├── home/ # 任务列表页
│ ├── calendar/ # 日历视图页
│ ├── stats/ # 统计页
│ ├── profile/ # 个人中心页
│ ├── edit/ # 任务编辑页
│ └── sync/ # 数据同步页
├── utils/ # 工具类
│ ├── userService.js # 用户服务
│ ├── taskService.js # 任务服务
│ └── storage.js # 本地存储
└── images/ # 图片资源
- 微信开发者工具(最新版本)
- 微信小程序账号
- 已开通云开发服务
- 克隆项目
git clone https://github.com/yourusername/task-master.git
cd task-master-
打开微信开发者工具
- 导入项目目录
- 填写 AppID
- 选择云开发模板
-
初始化云开发
- 点击「云开发」按钮
- 创建或选择云环境
- 记录环境ID
-
创建数据库集合 在云开发控制台创建以下集合:
users- 用户信息user-uploads- 用户上传记录tasks- 任务数据
-
配置数据库权限 设置集合权限规则:
{ "read": "auth.openid == doc._openid", "write": "auth.openid == doc._openid" } -
上传云函数 右键每个云函数文件夹,选择「上传并部署:云端安装依赖」:
loginuploadAvatarupdateProfilevalidateAvataruserOperationsyncTaskspullTasks
-
编译运行
- 点击「编译」按钮
- 在模拟器中查看效果
- 点击「新建任务」按钮
- 填写任务标题、描述
- 选择优先级(高/中/低)
- 设置截止日期(可选)
- 点击「保存」
- 点击任务卡片进入编辑页
- 修改任务信息
- 点击「保存」
- 点击任务左侧的复选框
- 任务标记为完成状态
- 点击任务卡片进入编辑页
- 点击「删除」按钮
- 确认删除
- 进入「我的」页面
- 点击「微信登录」
- 授权获取用户信息
- 登录成功后自动恢复云端任务
- 登录后点击头像
- 选择相册或拍照
- 系统自动上传和更新
- 点击「修改昵称」按钮
- 输入新昵称
- 点击确认
- 点击「退出登录」
- 确认后本地任务自动同步到云端
- 本地数据清除,云端保留
- 点击「微信登录」
- 登录成功后自动恢复云端任务
- 显示恢复的任务数量
- 用户数据基于OpenID完全隔离
- 数据库安全规则防止越权访问
- 会话令牌机制验证用户身份
- 头像上传前验证文件类型和大小
- Base64编码存储,无需云存储
- 限制每日上传次数防止滥用
- 所有输入参数严格验证
- 防止SQL注入和XSS攻击
- 字符串长度限制防止溢出
注册/登录用户,返回用户信息和会话令牌
上传用户头像,支持Base64格式
更新用户昵称和头像信息
验证上传的头像文件是否符合要求
提供多种用户操作(获取信息、删除头像、清理历史、验证会话)
将本地任务同步到云端数据库
从云端数据库拉取用户任务
详细API文档请参考:cloudfunctions/API_DOCUMENTATION.md
- 配置本地云开发环境
- 上传所有云函数
- 创建数据库集合并设置权限
- 测试所有功能
- 在微信开发者工具中点击「上传」
- 登录微信公众平台
- 进入「版本管理」
- 提交审核
- 审核通过后发布
详细部署文档请参考:cloudfunctions/DEPLOYMENT_GUIDE.md
- 任务创建、编辑、删除
- 任务完成状态切换
- 优先级和截止日期设置
- 日历视图展示
- 统计数据计算
- 用户登录/退出
- 头像上传和修改
- 云端任务同步
- iOS 12.0+
- Android 6.0+
- 微信 7.0+
- ✅ 完成基础任务管理功能
- ✅ 实现用户登录和头像修改
- ✅ 集成云端任务同步
- ✅ 完善数据验证和错误处理
- ✅ 优化用户界面和交互体验
欢迎贡献代码、报告问题或提出建议!
- Fork 项目
- 创建特性分支 (
git checkout -b feature/AmazingFeature) - 提交更改 (
git commit -m 'Add some AmazingFeature') - 推送到分支 (
git push origin feature/AmazingFeature) - 开启 Pull Request
本项目采用 MIT 许可证 - 详见 LICENSE 文件
- 项目主页:https://github.com/yourusername/task-master
- 问题反馈:https://github.com/yourusername/task-master/issues
- 邮箱:your.email@example.com
感谢微信小程序团队提供的优秀开发框架和云开发服务!
TaskMaster - 让任务管理更简单、更高效!