# 如何做一个小程序版的 To\-do List？

- 作者：知晓程序
- 发布时间：2017-02-03 12:00
- 原文：https://www.ifanr.com/minapp/780365

![todo](https://s3.ifanr.com/wp-content/uploads/2017/01/todo.jpg)

文 \| 姚晓哲

前几天，我们团队的工程师闲聊时，发现手头没有一个趁手的 to-do list 应用。

虽然我自己平时主要用桌面的便利贴，但是有一个这样的应用还是很棒的。刚好看了微信公开课，觉得 to-do list 会是一个比较好的结合点，对我们团队也非常有价值。

我们是这样思考这个小程序的：

**协作。**它能够在微信聊天中分享，这对于协作来说是非常有帮助的。

比如，当我想起有一个任务需要同学们帮我做，我随手就可以把它丢到微信聊天里，而且群里的同学还可以实时看到任务进行的状态（已完成或未完成）。

**小 + 高频。**很多人手机里都会有单独的一个 to-do list 类应用，但是实际上它可以做到非常小。小（或者说轻量）+ 高频，这是我们一开始认为的小程序最有趣的地方。

另外，对我们来说，如果能在 to-do list 里加番茄钟功能就更好了，这是我们同学们提出的一个需求。

因为我们常见的一个工作习惯是，to-do list 里给互相加个任务，然后番茄钟打开，尽量在这个时间里完成，然后就去玩游戏了。

于是，在某一个下午，我和前端打算利用公司的小程序的账号和 ID 干起了私活。好在，花了大约两个晚上的时间，这个小程序的雏形还是有了。

![todolist-1](https://s3.ifanr.com/wp-content/uploads/2017/01/todolist-1.jpg)

在这里和大家分享一下我们写这个小程序的过程中的感受吧。实际上我们是第一次写小程序，所以都是一些粗浅的东西，莫见笑。

首先，小程序的文档给我们的第一感觉是**资质要求高**。机构组织才能发布小程序、备案过才能加入域名白名单，甚至验证资质都需要对公打款验证。

好在这些公司都给我们准备好了，如果是个人开发者，可能要绕比较多的坑。

**小程序的开发资源，也在日益丰富**。在开发之前，我们在 GitHub 上随手搜索了一下，发现关于微信小程序的开发资源，包括开源的代码和文档，都已经非常丰富。

也有很多的框架可以用作开发，而且看上去真的很不错，其中也有很多特性很吸引人。

但我们在开发时考虑先用官方文档来试水，再切换到第三方框架，因此，开发时我们还是用了微信官方的接口和组件来进行开发，没有使用第三方框架。

因为来不及备案的原因，我们也没有时间来做单独做一个后台，遂决定用第三方云服务的数据存储来作为数据库使用。但我们因此明显感觉到工作量少了很多。

因此，**使用成本更低、稳定性更好的云服务来搭建小程序的服务器，是非常不错的**。

当然，这个项目也有一些坑和需要修补的地方。

目前没有遇到太多坑，但有比较大的问题，就是小程序似乎不能监听返回事件（也有可能是我们没有看仔细文档）。现在从详情回到主页，需要手动下拉才会刷新。

对了，番茄钟部分，要特别感谢一个开源项目：[github.com/kraaas/timer](https://github.com/kraaas/timer)。

因为时间关系，我们基本上就是照着他的番茄钟改了一点点，特别感谢！以后有时间的话，我们会慢慢把番茄钟这部分做得更好的。

原文地址：https://zhuanlan.zhihu.com/p/24771494?refer=techbuilds

**本文由知晓程序授权转载，关注微信号 zxcx0101，回复「1228」获得全网第一本《小程序入门指南》电子书。**

![zxcx-qun](https://s3.ifanr.com/wp-content/uploads/2017/01/zxcx-qun.png)

![new&#95;zx](https://s3.ifanr.com/wp-content/uploads/2017/01/new_zx-1.png)
