从1月10多号到2月19日一直在做微信小程序,虽然很菜,但是还是来分享哈自己的心得
入门教程就不细说 直接贴个官方文档的传送门:https://mp.weixin.qq.com/debug/wxadoc/dev/index.html
代码规范和其他相关的传送门http://www.w3cschool.cn/weixinapp/2xsy1qbv.html
下面就来详细的介绍哈自己目前的遇到比较尴尬的地方
1.开发工具
开发工具这个的确有点恶心,我这里图方便就直接下来微信小程序官方推荐的。目前来看,这个编辑器还是相当不稳定的,比如不能正常关闭,wxml查看节点不会加载等等。所以你如果用到一个比较稳定的版本,请慎重考虑是否选择升级。
2.开发工具也有的小技巧
由于你页面展示的顺序是由你app.json中的页面地址的顺序来展示的,经常切换代码顺序来预览就非常不方便了,这里我们就可以使用官方编辑器自带的功能来调整。
如图他这个地方有点小坑,这三个箭头代表三个功能。
中间那个就是我们要用的设置启动页的。
如图 我们只要放入app.json你需要的地址即可,同时我们也可以看到这里也可以设置参数。
但是一定要注意在图中红圈的地方打上勾,点击确定才能生效!
3.上传与预览
由于小程序大小最大为1024kb所以大家要严格控制自己项目的大小,由于有时候开发工具存在的bug,导致你的程序大于1024Kb时候也能出现扫描二维码的界面。但是在扫码后会提示构建失败之类的,这个时候首先回去看看你的程序大小是否合格。当时有时候也会出现预览时候报错undefined的,这个时候也可以去看看自己程序大小。
4.onload与onshow
onload只会在页面加载时候执行,比如你用navigateBack回到之前的页面的时候,之前那个页面不会再执行onload,所以我们要触发某些函数的时候,我们可以放在onshow里面,即使是navigateBack回来也会执行。
this.onload可以重新onload,但是注意你之前onload是否有options传参的操作,如果有,在你使用this.onload的时候记得对参数传递处理
5.关于绝对定位
对于移动端网页都有这个问题,对于一些有虚拟按键的手机,绝对定位不是一个很好的选择,他会在虚拟按键下出现上移的问题
6.关于时间戳相互转换
之前用了一些不是很好的方法,原本以为没问题,的确在安卓机型上没问题,在ios上则出现了bug,所以这里推荐使用微信小程序自带的util(这里有个使用的传送门http://www.jb51.net/article/97457.htm)
7.data管理
由于不能操作dom,这里很多东西要用setData更新,有时候逻辑稍微复杂,flag和data就会很多,这里个人觉得需要建立一个管理,来理清这些东西
后续会持续更新哦!