小程序的生命周期

小程序的生命周期

小程序

小程序有两个线程:界面线程和服务线程
界面线程四种状态:
1.初始化状态:初始化完毕之后向服务线程发送初始化完毕; 2.首次渲染状态:接收服务线程的初始化数据(data),对小程序页面开始进行渲染,渲染完毕后,发送信号首次渲染完毕给服务线程,并将页面展示给用户; 3.持续渲染状态:等待服务线程发送数据this.setdata,接收数据进行持续渲染;
4.结束状态。

服务线程四种状态:

1.初始化状态:初始化完成,调用onLoad和onShow; 2.等待激活状态:接收到界面线程初始化完成信号后,将初始化数据发送给界面线程,等待界面线程完成首次渲染。
3.激活状态:收到界面线程首次渲染完成的信号,进入激活状态,程序正常运行;
4.后台运行状态:当用户关闭微信或从小程序界面退出,小程序进入后台。

程序生命周期

小程序的生命周期在app.js中进行调用,使用App(Object)来进行小程序的注册并且只能注册一次,接收object类型的参数,指定小程序的生命周期回调;

在第一次进入小程序的时候,客户端初始化小程序的运行环境,初始化完成后,客户端派发onLaunch事件给逻辑层AppJs的app实例,当用户关闭微信或从小程序界面退出,小程序进入后台,触发onHide,当再次进入微信或者回到小程序,触发onShow,从后台回到前台。当小程序进入后台时间过长。系统资源占用过高,才会进行销毁。

Object参数:

onLaunch---------监听小程序初始化(在小程序初始化完成时触发,全局触发一次)

onShow------------监听小程序显示(小程序启动或者从后台进入前台时触发)

onHide-------------监听小程序的隐藏(小程序从前台进入后台时触发)

onError------------监听错误函数(小程序发生脚本错误或者api调用错误时触发)

onPageNotFound-----------监听页面(小程序要打开的页面不存在时触发)

经过demo测试,小程序的声明周期的调用顺序为onLaunch>onShow>onHide

页面生命周期

页面的声明周期函数就是当进入或者切换一个新的页面时,就会进行一次生命周期函数的调用,通过Page(Object)来进行页面的注册,接收object类型的参数;

初次加载时,微信客户端调用onLoad方法,onLoad在页面销毁前只会调用一次,在onLoad回调时,我们可以拿到当前页面的调用的打开参数,当页面显示的时候,onShow方法被调用。当页面完成初次渲染,onReady方法被调用,onReady方法在页面销毁前也只会调用一次。触发onReady之后,逻辑层与视图层进行交互。

Object参数:

onLoad--------监听页面的加载

onShow-------监听页面的显示(每次打开页面都会调用一次)

onReady-------监听页面初次渲染(一个页面调用一次进行渲染)

onHide---------监听页面隐藏 页面从前台转到后台

onUnload-------监听页面销毁

onPullDownRefresh---------监听下拉刷新

经过demo测试,小程序页面的声明周期的调用顺序为onLoad>onShow>onReady。

在一个小程序执行过程中,先触发小程序周期函数,再触发页面周期函数,即先调用onLaunch,再调用onLoad。并且再页面生命周期中onLoad与onReady都只执行一次。

评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值