目录:
一、引言:
在组队初期,我有幸成为了本组的组长(其实我自感觉不能胜任组长这个角色),我其实挺为难的,作为一个没有什么开发经验的人,想要组织大家去写一个完整的项目,是很困难的。期初大部分人一致的方向都是偏向网页版的开发,我们原本也打算写网页版,但是发现如果是网页版的项目,数据库的设计是一个很大的问题,庞大的数据库可能是我们无法控制的,所以在商讨之后大家决定走微信小程序的开发路线,对于我来说这真的是一次全新的体验,以前从来没有接触过微信小程序开发的人,内心真的挺害怕的,很担心自己会给队伍拖后腿……
二、开发过程:
既然下定决心要写小程序开发,就硬着头皮上了。
首先肯定是不停的学习课程以及看各种博客,第一天的时候我们真的是从早上九点开始到下午五点结束,一整天都在找各种微信小程序开发的视频教程,看着每个人都为了团队认真的样子,我也不能有所退缩。在看了一堆视频之后发现,其实微信小程序开发和网页的还是有很大的差别的,前端和后台都有不同。
1、刚开始我是专注于写后端代码,实现页面的跳转数据显示等功能。
2、到了后来我基本前后台一起写,在实现了个人主页面的时候我还挺激动,毕竟自己也写出了挺好看的样式,也知道了怎样调试页面样式,然后就开始了越发有兴趣的敲代码之路。
3、之后又找了一些样式模仿的写了交流页面。在写交流页面的时候,我在后台用了数组显示前台的数据,但是后来的问题是,我们的帖子是用户自己上传的,数据应该是动态添加的,而我写的数组是定死的,不能实现动态添加,这一问题就很让人头大,找了很多博客也没有看的很懂,之后就问了我们的队员,经过一段时间的对接,终于把这个问题解决了,交流贴的页面也就算是完成了,自我感觉样式也还可以(哈哈哈哈)。
4、之后是发帖页面和留言页面,在这两个页面中,最主要的还是数据上传的问题,有上传图片和不上传图片,这就要在js里调用云数据库了。刚开始选择小程序开发就是想着有云数据库还方便一点,只需要调用即可,可是最后发现这也挺困难的,毕竟不会用……
三、具体问题:
1、页面跳转问题:在微信小程序中页面跳转有好几种方法:
(1)、保留当前页面,跳转到应用内的某个页面,使用:wx.navigateBack可以返回到原页面。
(2)、当跳转到除了tarbar以外的页面时,使用:wx.navigateTo。
(3)、想要跳转到tarbar的页面就要使用:wx.switchTab 来进行跳转,不然会报错或者直接什么也没有……(不要问我怎么知道的)。
2、数据库中添加字段:
我刚开始以为添加字段就是会像mysql那样直接添加,结果这个有所不同,因为调用的是云端数据库,所以要在js里写实现方法:
update: function () {
//console.log(app.globalData.src)
var that = this
//从云端数据库下载数据
const db = wx.cloud.database()
const test = db.collection('test')
db.collection('test').doc(wx.getStorageSync('论坛tempdata' + wx.getStorageSync('论坛count'))).get({
success(res) {
// res.data 包含该记录的数据
console.log(res.data)
var tempdata = res.data.theme + res.data.description
var temp = that.data.info
console.log(tempdata)
that.setData({ info: tempdata })
}
})
3、样式问题:对于一个一直写网页后端的我来说,写前端真的挺难受,而且我还没有什么审美……
每次都是先自己瞎写一通,然后打开调试一通调(调就完事了!),每次我都很心疼我都 “Ctrl+S”,每调好一个就保存看看效果,这个心酸啊……后来,我还是觉得模仿吧,毕竟前人写的都是很完美的,然后就明显轻松了许多,不过在自己真正的写出页面的时候,我是真的很开心了,发现好像还挺好玩。
四、总结:
这次算是我初次接触微信小程序的开发,虽然过程 挺难,但是结局还算美好,大家一起努力的完成了一个比较大的完整的项目,我很开心,这次的学习中,我也收获了很多,比如:如何在团队中工作,如何分工,如何协调进度,如何把握项目流程等等……而且我以后不仅可以写后端我还可以尝试前端的东西,多学习一些框架之类的,希望在以后的项目中能够发挥自己更大的能力,让自己有更多的提升,加油!