启动服务OpenVS久违的行动好在没有忘记领导每次都把部门的待办事项列在excel中的习惯,并且然后发邮件给下属,抄给上级,很容易跟进工作事项。一旦任务列表被更改,然后重新发送邮件,这种管理方式没有错,但这种操作方式确实很低效。我决定制作一个简单的在线待办事项列表。领导可以添加待办事项,下属可以更改状态。最重要的功能是发送电子邮件功能。一键发送待办清单给下属,并抄送给上级领导。电子邮件在传统企业中确实必不可少。1.数据库准备在开始开发前创建数据库。自从上次学习了ORM模块后,就不用再去操作数据库中的SQL语句了,直接在代码上写数据表的结构和一些初始化数据导入的代码。具体例子可以参考:sequelize模块初步使用-Node实战。2.前端页面折腾完数据库结构,开始折腾前端页面的设计。我不想重写页面。我只是复制了之前项目的代码。短短半个小时,前端页面就搞定了,如下图:“PS。结果又调整了两天,醉了。”前端表用bootstrap表制作,与后端数据库的交互直接使用Ajax异步处理。现在编写获取数据的API,很简单://find:Gettabledatarouter.get('/bootstrapTable',function(req,res,next){todolist.findAll({order:[['id','desc']]}).then(function(r){res.send(r);});});添加、删除、修改、检查后,前台可以简单调用API实现一些功能,如添加列表功能、更改列表、删除列表等。3、最近开发了列表编辑功能,使用BootstrapTable显示列表。这也是耗时最多的地方。每次写这个表,总有一堆奇奇怪怪的想法要实现,没有一个整体的规划和功能来回调整,所以很多时间都浪费在这上面了。这次主要折腾了字段编辑功能和变更列表功能。改变窗体功能的方法有两种:一种是使用模态弹出窗体;另一种是行内编辑法;模态弹窗会加入很多js脚本,后期管理起来很不方便。至于内联编辑方式,虽然不用写很多代码,但是功能比较简单。总的来说,这两种方法都不是很理想。我觉得我应该学习一些新技术,比如Vue。后来选择了模态弹出的编辑方式,功能就完成了一半。我突然想到,为什么要有一个change函数呢?,总是用开发者的思维来做产品肯定是不行的。开发者以为增删改查是最基本的功能点,但是当用户使用产品的时候,其实就不一样了。用户关心功能点。我这样做产品是为谁准备的?开始之前我得想一想……4.邮件功能一开始我想的是在每个列表的末尾添加一个操作功能——发邮件,用一个简单的mailto:lupeng@xxx.com链接到trigger系统使用默认的邮件客户端发送邮件。后来仔细考虑了实际的使用场景,放弃了这种方式。平时使用时,基本上是将表单的所有内容一起发送,实现提醒的功能,而不是催促完成每个任务列表。另外,最好是真正意义上的一键发送邮件,中间弹出邮件客户端的链接要省去。在了解了实际的使用场景之后,邮件的功能还需要再深入一点,需要引入邮件模块来代替使用客户端的作用。开发过程中的一些想法,供参考,希望能给大家一些启发,项目地址:https://github.com/pengloo53/info
