- 打开微信开发者工具
- 点击工具栏「云开发」按钮
- 开通云开发服务(免费版即可)
- 记录环境 ID(如:
todo-app-dev)
wx.cloud.init({
env: 'your-env-id', // 替换为你的环境 ID
traceUser: true
}){
"appid": "你的小程序 AppID",
"cloudfunctionRoot": "cloudfunctions/"
}在微信开发者工具中:
- 右键
cloudfunctions/todo目录 - 选择「上传并部署:云端安装依赖」
- 等待上传完成
- 同样操作上传
category和pomodoro
在云开发控制台:
- 点击「数据库」
- 创建集合
todos - 创建集合
categories - 创建集合
pomodoro
todos 集合:
_openid(升序)createdAt(降序)completed(升序)
pomodoro 集合:
_openid(升序)completedAt(降序)
修改 utils/storage.js:
const USE_CLOUD = true // 改为 true 启用云开发| 操作 | action | 参数 |
|---|---|---|
| 获取所有 | getAll |
- |
| 添加 | add |
data: 待办数据 |
| 更新 | update |
id, data |
| 删除 | remove |
id |
| 批量删除 | batchRemove |
ids: [] |
| 操作 | action | 参数 |
|---|---|---|
| 获取所有 | getAll |
- |
| 添加 | add |
data: 分类数据 |
| 更新 | update |
id, data |
| 删除 | remove |
id |
| 操作 | action | 参数 |
|---|---|---|
| 记录 | record |
todoId, duration |
| 今日统计 | getTodayStats |
- |
| 历史统计 | getHistoryStats |
startDate, endDate |
{
_id: "自动生成",
_openid: "用户 OpenID",
title: "待办标题",
completed: false,
categoryId: "分类 ID",
priority: "high", // high/medium/low
dueDate: 1711353600000,
focusTime: 50, // 专注分钟数
createdAt: Date, // 服务器时间
updatedAt: Date
}{
_id: "自动生成",
_openid: "用户 OpenID",
name: "工作",
color: "#3498db",
icon: "work",
isDefault: true, // 是否默认分类
createdAt: Date
}{
_id: "自动生成",
_openid: "用户 OpenID",
todoId: "待办 ID", // 可选
duration: 25, // 分钟
completedAt: Date
}如果已有本地数据,可以迁移到云端:
// 在小程序中运行
const todos = wx.getStorageSync('todos')
const categories = wx.getStorageSync('categories')
// 批量上传到云端
wx.cloud.callFunction({
name: 'todo',
data: { action: 'migrate', data: todos }
})// utils/storage.js
const USE_CLOUD = false// utils/storage.js
const USE_CLOUD = true微信云开发免费版额度:
- 数据库:2GB 存储,5GB 流量/月
- 云函数:10 万次调用/月
- 云存储:5GB 存储,10GB 流量/月
个人项目完全够用!
- 云函数需要上传后才能调用
- 数据库权限默认仅创建者可读写
- 云函数调用有延迟(200-500ms)
- 建议保留本地存储作为降级方案
A: 检查是否已上传云函数,环境 ID 是否正确
A: 检查 _openid 是否正确,权限设置
A: 在云开发控制台查看云函数日志
开发者: Survivor0102
更新日期: 2026-03-25