一个基于 Taro + React + NutUI + Zustand 的跨端待办小应用,包含「今日待办」与「历史记录」两大页面,支持添加、勾选、删除与按日期分组浏览。
| 首页 | 添加任务弹窗 | 历史记录 |
|---|---|---|
![]() |
![]() |
![]() |
- 今日待办:快速添加、勾选完成、删除任务
- 历史记录:按日期自动分组,展示每日任务数量
- UI 组件:NutUI Taro 组件库
- 状态管理:Zustand,本地内存存储
- 简洁样式:自定义 SCSS,移动端友好
src/app.config.ts:全局路由与 tabBar 配置(今日 / 历史)src/app.ts:应用入口,注册全局样式src/pages/home:今日待办页src/pages/history:历史记录页src/store/todosList.ts:Zustand 待办状态(新增/切换/删除/按日查询)
- Taro + React
- NutUI React Taro
- Zustand
- SCSS
npm installnpm run dev:weappnpm run dev:h5npm run build:weapp
npm run build:h5- 添加待办:弹窗输入文本,回车确认清空输入
- 勾选完成:复选框切换完成状态
- 删除待办:二次确认弹窗,防误删
- 日期分组:历史页按日期倒序分组展示,显示每组数量,格式化为「今天/昨天/日期」
type Todo = { id: number text: string completed: boolean date: string // YYYY-M-D }
addTodo(text, date?):新增,默认使用今日日期toggleTodo(id):切换完成状态deleteTodo(id):删除getTodayTodos():获取今日待办getTodosByDate(date):按日期过滤
- 主要组件:
Button,Dialog,TextArea,Cell,Checkbox(NutUI) - 配色:选中色
#fa2c19,背景浅灰,卡片阴影
pages/home:今日待办列表,空态提示「点击右上角添加任务」pages/history:历史分组列表,空态提示去首页添加任务


