这是作者第一次开发小程序。之前一直打算自己做一个,可以在网上用,但是一直找不到灵感。除此之外,我还需要服务器、数据库等技能,这些都还没有实现。后来偶然看到了微信小程序云的开发(有点惊艳,真的很简单),稍加思考,就开启了小程序云开发之旅。
鉴于我的技术水平(遮脸),看到很多人都在分享年底的年度目标,我决定就年度目标做一个备忘录,简单方便又有意义。
在实际开发中,往往需要产品相关的思维导图和原型图来指导开发。即使是一个小项目,我认为也需要一个好的想法。以下是小程序的思维导图:
列出下面的主页。
主页实现的功能:
通过云端功能获取当前用户的openid,查询用户今年的目标;查询链接附带的id,获取其他用户共享的目标内容;一些代码如下:
//调用云函数wx.cloud.call函数({name :' login ',data : {},success : RES={ console . log '[cloud function][log in]user OpenID 3360 ',RES . result . OpenID)app . global data . open . if(!id){ this . GetDATa();}}},fail : err={ console . err('[cloud function][log in]调用失败',err)})//查询数据库const db=wx . cloud . database();db.collection('targets ')。其中({ _ OpenID : app . global data . OpenID,date: new Date()。getFullYear()})。get({ success : RES={ let data=RES . data[0]| | { };this.setData({ id: data。_id || ' ',title: data.title || ' ',content: data.content || ' ',flag: false }) },fail : ErR={ console . log(err)this . setdata({ flag 3360 false })})Copy code
列表实现的功能:
显示该用户添加的所有目标;向左滑动以删除、添加目标详细信息、编辑和添加条目;一些代码如下:
//获取所有目标const db=wx . cloud . database();db.collection('targets ')。其中({ _ OpenID : app . global data . OpenID })。get({ success : RES={ this . setdata({ flag : true,targetList: res.data,height : height })app . global data . target list=RES . data;},fail : err={ wx . show toast({ icon : ' none ',Title3360 '查询记录失败',} } })//对删除let id=e.currentTarget.id的响应;const db=wx . cloud . database();数据库集合(“目标”)。文档(标识)。删除({成功: RES={ wx . show toast({ title : '删除成功',}}),失败3360 err={ wx . show toast({ title 3360 '删除失败'
增加目标实现功能:
让用户通过选择器组件选择年份;您可以添加/编辑年度目标的标题和内容;一些代码如下:
//添加数据db.collection(“目标”)。add ({data3360data,success 3360 RES={ wx . show toast({ Title 3360 '成功添加',})},fail : err={ wx . show toast({ Title 3360 '添加失败',Icon: '无' } })//Edit data db . collection(' targets ')。Doc (data.id)。更新({Data 3360data,succe : RES={ wx . show toast({ title 3360 '修改成功',}}),fail 3360 err={ wx . show toast({ title 3360 '修改失败',}))复制代码
小程序仅用了一周时间就成功开发发布。不得不称赞云开发给开发者带来的便利,而且是免费的。为了表达顺利发展,我特意用百度展示了一下。
希望我没有想错,这是一张纯粹的过山车地图()
分享到朋友圈功能尚未实现,当前页面将保存为图片供用户手动分享。Textarea标签是用来给用户添加数据的,有点粗糙。希望小程序尽快发布。虽然在工作中经常接触到设计图纸,但还是没有ui设计感,所以以后会尽量弥补设计上的不足;小程序云开发的数据响应有些慢。据说云开发目前只在上海部署,我们期待后续的优化。