微信小程序 生命周期詳解
微信小程序 生命周期
通俗的講,生命周期就是指一個對象的生老病死。 從軟件的角度來看,生命周期指程序從創(chuàng)建、到開始、暫停、喚起、停止、卸載的過程。
下面從一下三個方面介紹微信小程序的生命周期:
- 應(yīng)用生命周期
- 頁面生命周期
- 應(yīng)用生命周期影響頁面生命周期
》》》應(yīng)用生命周期
- 用戶首次打開小程序,觸發(fā) onLaunch(全局只觸發(fā)一次)。
- 小程序初始化完成后,觸發(fā)onShow方法,監(jiān)聽小程序顯示。
- 小程序從前臺進(jìn)入后臺,觸發(fā) onHide方法。
- 小程序從后臺進(jìn)入前臺顯示,觸發(fā) onShow方法。
- 小程序后臺運行一定時間,或系統(tǒng)資源占用過高,會被銷毀。
前臺、后臺定義: 當(dāng)用戶點擊左上角關(guān)閉,或者按了設(shè)備 Home 鍵離開微信,小程序并沒有直接銷毀,而是進(jìn)入了后臺;當(dāng)再次進(jìn)入微信或再次打開小程序,又會從后臺進(jìn)入前臺。
在整理本文資料的時候,有點不解,為什么不把小程序監(jiān)聽『銷毀』方法開放給開發(fā)者,我猜測是因為IOS系統(tǒng)限制『按下Home鍵時,app從活動狀態(tài)轉(zhuǎn)入后臺,會被掛起』;微信也不例外,只要運行一段時間或把微信客戶端進(jìn)程殺掉,就無法通知小程序應(yīng)用被銷毀。
》》》頁面生命周期
- 小程序注冊完成后,加載頁面,觸發(fā)onLoad方法。
- 頁面載入后觸發(fā)onShow方法,顯示頁面。
- 首次顯示頁面,會觸發(fā)onReady方法,渲染頁面元素和樣式,一個頁面只會調(diào)用一次。
- 當(dāng)小程序后臺運行或跳轉(zhuǎn)到其他頁面時,觸發(fā)onHide方法。
- 當(dāng)小程序有后臺進(jìn)入到前臺運行或重新進(jìn)入頁面時,觸發(fā)onShow方法。
- 當(dāng)使用重定向方法wx.redirectTo(OBJECT)或關(guān)閉當(dāng)前頁返回上一頁wx.navigateBack(),觸發(fā)onUnload
》》》應(yīng)用生命周期影響頁面生命周期
- 小程序初始化完成后,頁面首次加載觸發(fā)onLoad,只會觸發(fā)一次。
- 當(dāng)小程序進(jìn)入到后臺,先執(zhí)行頁面onHide方法再執(zhí)行應(yīng)用onHide方法。
- 當(dāng)小程序從后臺進(jìn)入到前臺,先執(zhí)行應(yīng)用onShow方法再執(zhí)行頁面onShow方法。
下圖是小程序從注冊到頁面加入,前后臺切換流程。
感謝閱讀,希望能幫助到大家,謝謝大家對本站的支持!
相關(guān)文章
ECMAScript 6對象的擴(kuò)展實現(xiàn)示例
這篇文章主要為大家介紹了ECMAScript 6對象的擴(kuò)展實現(xiàn)示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-08-08bigScreen大屏配置選項無法和畫布中心的展示聯(lián)動解決
這篇文章主要為大家介紹了bigScreen大屏配置選項無法和畫布中心的展示聯(lián)動解決,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-01-01