一,功能
1,小程序支持自定义组件,视频直播,模板消息,将web页面用web-view插入小程序,获取用户信息包括手机号…功能很丰富,可查看官方API
2,在小程序内可打开或返回同一公众号下的小程序
3,同一微信开放平台下的不同应用,用户的openid是不一样的,但是unionid是唯一的
4,页面最多有5层,代码包大小2MB
二,兼容
微信客户端的每个版本都携带小程序的稳定版基础库,当用户的基础库不支持小程序功能时,可在微信公众平台设置最低版本,届时提醒用户更新微信。在开发时可用wx.canIUse判断当前基础库是否支持要加功能
三,性能与分析
1,频繁或者大量setData会造成页面卡顿;图片尽量放在服务器上;及时清理没用的代码和资源,缩小代码包。参考文档
2,使用abd工具和微信开发者工具的Trace面板分析小程序性能。参考文档与adb安装教程
3,可在微信公众平台自定义分析数据,创建事件和漏斗。经管理员授权后可用小程序数据助手查看分析结果
四,那些年,小程序挖的坑
1,canvas组件是客户端创建的原生组件,层级最高,不能通过z-index控制层级。使用方法与HTML5的canvas有差异。可以使用cover-view覆盖原生组件
2,自定义组件样式失效,解决办法参考文档
3,如果样式或数据或跳转链接不对,尝试下清除缓存
4,iOS或者安卓真机无法获取接口数据,很有可能是SSL证书不受信任
5,小程序input组件使用百分比宽度显示不全,解决办法参考
6,使用tabbar跳转页面不能带参数
7,video组件真机上bindplay失效
8,flex布局需要设置view的宽度
9,视频退出全屏时显示不完整,解决方法是退出全屏时设置视频的宽度为wx.getSystemInfo的windowWidth
10,安卓机视频createVideoContext控制play有时失效,seek会倒退十几秒,不知是bug还是feature
11,onShareAppMessage内不能使用this
12,cover-view即使position为fixed,只会显示原生组件上的内容