《微信小程序开发从入门到实战》学习六十一

6.3 路由API

6.3.3 页面切换时的生命周期

小程序的每个页面都有很多生命周期函数:

onLoad函数用于监听页面加载

onShow用于监听页面显示

onReady用于监听页面初次渲染完成

onHide用于监听页面隐藏

onUnload用于监听页面卸载

当小程序发生页面切换时,跳转前后的两页面都有一些生命周期函数会被调用。具体情况(不包含tabBar)如下:

路由方式 路由前页面 路由后页面
打开小程序 onLoad,onShow
打开新页面 onHide onLoad,onShow
页面返回 onUnload onShow
页面重定向 onUnload onLoad,onShow
重定向 onUnload onLoad,onShow

 当使用wx.switchTab接口切换tabBar页面时,情况很复杂。假设A、B页面为tabBar页面,C是从A页面打开的页面,D是从C打开的页面,E是用户通过转发卡片进入的页面(此时页面栈中只有一个E页面)。tabBar页面切换的各种情况的生命周期函数调用如下表所示:

当前页面 路由后页面 触发的生命周期情况(按顺序)
A A
A B A.onHide,B.onLoad,B.onShow
A B(再次打开) A.onHide,B.onShow
C A C.unLoad,A.onShow
C B C.unLoad,B.onLoad,B.onShow
D B D.unLoad,C.unLoad,B.onLoad,B.onShow
E A E.unLoad,A.onLoad,A.onShow

你可能感兴趣的:(学习)