微信小程序 — 小程序生命周期及頁面生命周期--深深理解

序:

小程序生命周期分類: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 頁面打開的頁面為例):

參考:http://www.lxweimin.com/p/ee7c11d691c1

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

推薦閱讀更多精彩內(nèi)容