序:
小程序生命周期分類:1:小程序生命周期 2:小程序頁面生命周期?
下面從這四個方面講解
? ? ? ? 1:小程序的生命周期。
? ? ? ? 2:小程序頁面的生命周期。
? ? ? ? 3:小程序的生命周期對小程序頁面生命周期的影響。
? ? ? ? 4:路由變化對小程序頁面生命周期的影響。
1:小程序的生命周期。
官方介紹:https://developers.weixin.qq.com/miniprogram/dev/reference/api/App.html
1:onLaunch ---------觸發(fā)條件:小程序初始化完成時,會觸發(fā) onLaunch(全局只觸發(fā)一次)
????????????用戶首次打開小程序,觸發(fā) onLaunch(全局只觸發(fā)一次)
2:onShow -----------觸發(fā)條件:1:小程序初始化完成后,:2::監(jiān)聽小程序顯示(后臺進(jìn)前臺)
3:onHide -------------觸發(fā)條件:小程序前臺進(jìn)入后臺
2:小程序頁面的生命周期。
官方介紹https://developers.weixin.qq.com/miniprogram/dev/reference/api/Page.html
1:onload------觸發(fā)條件:1:加載頁面(頁面data由邏輯層傳至渲染層)
2:onshow------觸發(fā)條件:1:頁面展示(eg:1:頁面展示2:后臺進(jìn)前臺)
3:onready-----觸發(fā)條件:1:首次渲染完成,渲染頁面元素和樣式,一個頁面只會調(diào)用一次。
? ??a、一個頁面只會調(diào)用一次,代表頁面已經(jīng)準(zhǔn)備妥當(dāng),可以和視圖層進(jìn)行交互。
????b、對界面的設(shè)置如wx.setNavigationBarTitle請在onReady之后設(shè)置。詳見生命周期
4:onHide------觸發(fā)條件:1::頁面隱藏(eg:)
????????1:1.1前臺到后臺2:1.2前臺到其他頁面
?????????2:當(dāng)navigateTo或底部tab切換時調(diào)用。
5:onUnload---觸發(fā)條件:頁面卸載(redirectTo或navigateBack)
3:小程序的生命周期對小程序頁面生命周期的影響。
1、小程序初始化完成后,頁面首次加載觸發(fā)onLoad,只會觸發(fā)一次。
2、當(dāng)小程序進(jìn)入到后臺,先執(zhí)行頁面onHide方法再執(zhí)行應(yīng)用onHide方法。
3、當(dāng)小程序從后臺進(jìn)入到前臺,先執(zhí)行應(yīng)用onShow方法再執(zhí)行頁面onShow方法。
四、路由變化對頁面生命周期的影響
1、在小程序中所有頁面的路由全部由框架進(jìn)行管理,框架以棧的形式維護(hù)當(dāng)前的所有頁面,當(dāng)發(fā)生路由切換的時候,頁面棧的表現(xiàn)如下:
2、對于路由的觸發(fā)方式以及頁面生命周期函數(shù)如
下:
3、Tab 切換對應(yīng)的生命周期(以 A、B 頁面為 Tabbar 頁面,C 是從 A 頁面打開的頁面,D 頁面是從 C 頁面打開的頁面為例):