微信小程序的逻辑层主要包括:小程序的初始化过程和页面的初始化过程。微信小程序使用了App和Page方法进行了程序和页面的注册,使用getApp()方法来获取App()实例。
1.小程序的初始化
小程序的注册和初始化是通过App()函数进行的,App()注册小程序时接受一个object参数,指定小程序的生命周期。
属性 | 描述 |
---|---|
onLaunch | 监听小程序初始化,初始化完成时触发(全局触发一次) |
onShow | 监听小程序显示,从后台进入前台时显示 |
onHide | 从前台进入后台,会出发onHide |
前后台定义:当用户点击左上角关闭,或者按了设备 Home 键离开微信,小程序并没有直接销毁,而是进入了后台;当再次进入微信或再次打开小程序,又会从后台进入前台
2.页面注册
按照如下表中的顺序进行执行:
属性 | 描述 |
---|---|
onLoad | 监听页面加载 |
onShow | 监听页面显示 |
onReady | 监听页面初次渲染完成 |
onHide | 监听页面隐藏 |
onUnload | 监听页面卸载 |
3.组件的生命周期
属性 | 描述 |
---|---|
created | 在组件实例刚刚被创建时执行(此时setData()不能调用) |
attached | 在组件实例进入页面节点树时执行(this.data已经初始化为组件当前值) |
ready | 在组件视图层布局完成后执行 |
moved | 组件实例被移动到节点树另一位置时执行 |
detached | 组件实例被从页面节点树移除事执行 |
error | 每当组件抛出错误时执行 |
4.组件所在页面的生命周期
属性 | 描述 |
---|---|
show | 组件所在的页面被展示时执行 |
hide | 组件所在页面被隐藏时执行 |
resize | 组件所在的页面尺寸 |