前言:这是笔者第一次开发小程序,此前一直有打算自己做一个,并且能够上线使用,但一直找不到灵感,加上还需要服务器端、数据库等技能,所有一直没能实现。后来偶然看到微信小程序云开发(有点惊艳了,确实挺简便),再加上一点点想法,于是就开始了小程序云开发之旅。
第一步,要做什么东西?
鉴于自己的技术水平(捂脸),还有看到年末很多人都在分享年目标,于是便决定好做一个年目标备忘录,简单方便,且有一些意义。
第二步,思考小程序的结构
实际开发中,往往需要产品相关的思维导图、原型图等来指导开发,即使做一个小项目,我认为也需要一个良好的构思,以下是小程序的思维导图:
第三步,开发阶段
以下列举主要页面
首页
部分代码如下:
// 调用云函数
wx.cloud.callFunction({
name: 'login',data: {},success: res => {
console.log('[云函数] [login] user openid: ',res.result.openid)
app.globalData.openid = res.result.openid;
if(!id){
this.getData();
}
},fail: err => {
console.error('[云函数] [login] 调用失败',err)
}
})
//查询数据库
const db = wx.cloud.database();
db.collection("targets").where({
_openid: app.globalData.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
})
},0);">console.log(err)
this.setData({
flag: false
})
}
})
复制代码
列表页
列表实现的功能:
查询记录失败',}) } }) //响应删除 let id = e.currentTarget.id; const db = wx.cloud.database(); db.collection("targets").doc(id).remove({ success: res => { wx.showToast({ title: '删除成功',}) },fail: err => { wx.showToast({ title: '删除失败',}) } }) 复制代码
添加目标
部分代码如下:
//新增数据
db.collection("targets").add({
data: data,success: res => {
wx.showToast({
title: '新增成功',fail: err => {
wx.showToast({
title: '新增失败',icon: 'none'
})
}
})
//编辑数据
db.collection("targets").doc(data.id).update({
data: data,0);">'修改成功',0);">'修改失败',})
}
})
复制代码
第四步,最终结果
小程序从开发到发布成功,只花了一周时间,不得不赞扬云开发给开发者带来的便利,并且还是免费的,为了表达出开发的顺畅,我特意百度了一张图来体现
希望没有想歪哈,这是一张纯粹的过山车图(>▽<)
因时间、技术或者环境限制,一些还没有解决的问题:
- 分享到朋友圈功能还没有实现,后续将实现保存当前页为图片,让用户手动分享;
- 使用了textarea标签给用户添加数据,有些简陋,希望小程序尽快出富文本编辑器;
- 虽然工作中经常接触设计图,但对ui设计还是有些无感,以后尽量弥补设计上的不足;
- 小程序云开发数据响应有一些缓慢,据称云开发目前只部署在上海,期待后续优化;
最后附上小程序码,微信扫码即可体验(或搜索我的年目标)。另外,祝愿大家都能开发出自己的小程序,并且在新的一年实现自己的人生目标^_^
参考文档/文章:
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。