初次接手小程序,进行了一些市场调研。目前比较用的多的应该是以下三种方法开发:
建议不管选择什么开发 都把小程序文档过一遍
1.原生小程序官方文档
2.mpvue官方文档
3.WePy
花了两个小时接触了一下原生小程序的开发 给我的感受如下:
原生小程序
- 小程序的开发工具不好适应。
- 数据没有类似于Vuex工具进行集中管理
- 没接触过的人 基本相当于从开始学习
- 不能自动构建
- 没有css预处理器 作为常用stylus的人根本受不了
Mpvue
作为vue开发的人来说 mpvue简直就是福音
如果开发相同的一个H5和小程序页面,一个组件有将近90%代码复用率。
- mpvue不支持vue-router
- mpvue 可以使用vuex进行集中的数据管理 可以使用npm
- 支持less/sass语法
- 自动构建
- 转换H5效率极高
作为使用vue开发的码农学习成本极底
下图为官方给出的mpvue的生命周期
注意事项:
小程序页面跳转的时候 使用wx.navigateTo(OBJECT) 最多可以跳转十层
复制代码
先说一个bug
如果当前页面有个弹窗,用户点击跳转别的页面。当用户返回之后,该弹窗还在显示。一般来讲,如果用户离开当前页面,当前页面会触发unload钩子,当前页面的信息都会初始化。但是,控制弹窗的数据却没有进行初始化。
解决
如果希望页面返回的时候初始化,则需要 在页面onShow onUnload 的钩子函数中 进行页面的数据初始化
原理
当页面触发onUnload的时候 销毁的其实是小程序的page 而vue的实例却会被保存,所以当下次进入页面的时候 vue会初始化上次留存下的数据。
调用 wx.downloadFile(OBJECT) bug
有个需求需要下载网络图片 绘制canvas 然而调用downloadFile的时候 不同的手机不同的效果 有的手机获取不到临时路径 测试很多次 也不是网络原因,最后只能写死在本地
下面项目是ou们公司的一个小程序 触发用户授权的时候 小程序需要使用button按钮 触发用户主动授权的弹窗 在后台会有用户反映说点击失效的问题。虽然反馈用户极其少数。但还是没找到问题的原因。难道这是代码bug???微信bug???怀疑自己的智商了。
几千的用户量 后台偶尔会报解析这三个字端乱码的问题 快要怀疑人生了 我保证我没动它 ?
技术小白 大神勿喷