
周期指程序从创建、到开始、暂停、唤起、停止、卸载的过程。下面从一下三个方面介绍微信 小程序 的生命周期:
应用生命周期
页面生命周期
应用生兆散命周期影响页面生命周期
应用生命周期
1、用户首次打开小程序,触发 onLaunch(全局只触发一次)。
2、小程序初始化完成后,触发onShow方法,监听小程序显示。
3、小程序从前台进入后台,触发 onHide方法。
4、小程序从后台进入前台显示,触发 onShow方法。
5、小程序后台运行一定时间,或系统资源占用过高,会被销毁。
前台、后台定义: 当用户点击左上角关闭,或者按了设备 Home 键离开微信,小程序并没有直接销毁,而是进入了后台;当再次进入微信或再次打开小程序,又会从后台进入前台。需要注意的是:只有当小程序进入后台一定时间,或者系统资源占用过高,才会被真正的销毁。
页面生命周期
1、小程序注册完成后,加载页面,触发onLoad方法,一个页面只会调用一次。
2、页面载入后触发onShow方法,显示页面,每次打开页面都会调用一次。
3、首次显示页面,会触发onReady方法,渲染页面元素和样式,一个页面只会调用一次。
4、当小程序后台运行或跳转到其他页面时,触发onHide方法。
5、当小程序有后台进入到前台运行或重新进入页面时,触发onShow方法。
6、当使用重定向方法wx.redirectTo(OBJECT)或关闭当前页返回上一页wx.navigateBack(),触返猜做发onUnload
wx.navigateTo跳转状态下,页面A和页面B的生命周期逻辑
1、进入A页面:A执行onLoad()-->onShow()-->onReady();
2、A页面navigateTo B页面:A执行onHide(),B执行onLoad()-->onShow()-->onReady();
3、B页面返回A页面:B执行onUnload(),A执行onShow();
4、退出A页面:A执行onUnload()。
应用生命周期影响页面生命周期
1、小程序初始化完成后,漏衡页面首次加载触发onLoad,只会触发一次。
2、当小程序进入到后台,先执行页面onHide方法再执行应用onHide方法。
3、当小程序从后台进入到前台,先执行应用onShow方法再执行页面onShow方法。
小程序开发工具--详情--本地设置--启用自定义处理命令
用来执行脚本
为了提升用户 *** 作的流畅性,同时让用户在微信内拥有一致的 *** 作体验,“右滑手势返回”将成为基础配置,即所有小程序内都可以从屏幕左侧边缘向右滑动返回上一个界面。 在即将发布的7.0.5客户端版本中,页面配置中的 disableSwipeBack 属性将不再生效,请开发者及时调整。
背景图为fixed, top随滚动而改变 。 重点就是 onPageScroll 。
还可使用 scroll-view 的下拉刷新,且可以自定义样式。
用wxs监听滚动事件,设置样式。
不在以下 request 合法域名列表昌唯中,请参考文档
解决方案:在详情--本地设置中勾选“不校验合法域名。。。”
mode widthFix 缩放模式,宽度不变,高度自动变化,保持原图宽高比不变。应避免使用widthFix,尽量指定宽高。
导航栏高度
iOS 44px (4+32+8)
android 48px (8+32+8)
胶囊与状态栏间距(应该计算得出)ios 4px,Android 8px,与导航栏底边距8px(只能取固定值)。
胶囊高度 32px
状态栏高度,刘海屏通常为44px
setData 是小程序开发中使用最频繁、也是最容易引发性能问题的接口。
因此,开发者在调用 setData 时要注意:
数组索引不能直接用变量,解决方案:
取原来的值:
在onUnload中取消timer
微信小程序中,可以用 hover-class 属性来指定元素的点击态效果。但是在在使用中要注意,大部分组件是不支持该属性的。
目裂迅绝前支持 hover-class 属性的组件有三个:view、button、navigator。
不支持 hover-class 属性的组件,同时也不支持 hover-stop-propagation、hover-start-time、hover-stay-time 这三个属性。
如果background写在wxml中,那么background-size也要写在style中,如果写在wxss中不会生效。
获取系肆姿统屏幕边框的安全距离:
safe-area-inset-top
safe-area-inset-right
safe-area-inset-bottom
safe-area-inset-left
ios11:constant(safe-area-inset-bottom)
ios11.2:env(safe-area-inset-bottom)
scroll-view的子元素最好包一层,不然宽度可能不起作用。
当小程序使用页面进行滚动时,可以给遮罩设置catchtouchmove属性来禁止页面滚动
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)