① 微信小程序生命周期(onLoad,onHide,onShow,onReady,onUnload)
周期指程序從創建、到開始、暫停、喚起、停止、卸載的過程。下面從一下三個方面介紹微信 小程序 的生命周期:
應用生命周期
頁面生命周期
應用生命周期影響頁面生命周期
應用生命周期
1、用戶首次打開兆散小程序,觸發 onLaunch(全局只觸發一次)。
2、小程序初始化完成後,觸發onShow方法,監聽小程序顯示。
3、小程序從前台進入後台,觸發 onHide方法。
4、小程序從後台進入前台顯示,觸發 onShow方法。
5、小程序後台運行一定時間,或系統資源佔用過高,會被銷毀。
前台、後台定義: 當用戶點擊左上角關閉,或者按了設備 Home 鍵離開微信,小程序並沒有直接銷毀,而是進入了後台;當再次進入微信或再次打開小程序,又會從後台進入前台。需要注意的是:只有當小程序進入後台一定時間,或者系統資源佔用過高,才會被真正的銷毀。
頁面生命周期
1、小程序注冊完成後,載入頁面,觸發onLoad方法,一個頁面只會調用一次。
2、頁面載入後觸發onShow方法,顯示頁面,每次打開頁面都會調用一次。
3、首次顯示頁面,會觸發onReady方法,渲染頁面元素和樣式,一個頁面只會調用一次。
4、當小程序後台運行或跳轉到其他頁面返猜做時,觸發onHide方法。
5、當小程序有後台進入到前台運行或重新進入頁面時,觸發onShow方法。
6、當使用重定向方法wx.redirectTo(OBJECT)或關閉當前頁返回上一頁wx.navigateBack(),觸發onUnload
wx.navigateTo跳轉狀態下,頁面A和頁面B的漏衡生命周期邏輯
1、進入A頁面:A執行onLoad()-->onShow()-->onReady();
2、A頁面navigateTo B頁面:A執行onHide(),B執行onLoad()-->onShow()-->onReady();
3、B頁面返回A頁面:B執行onUnload(),A執行onShow();
4、退出A頁面:A執行onUnload()。
應用生命周期影響頁面生命周期
1、小程序初始化完成後,頁面首次載入觸發onLoad,只會觸發一次。
2、當小程序進入到後台,先執行頁面onHide方法再執行應用onHide方法。
3、當小程序從後台進入到前台,先執行應用onShow方法再執行頁面onShow方法。
② 小程序 onshow 和 onload 的區別
onLoad: 頁面載入時觸發,從二級頁面回來時不會觸發。
onshow: 當小程序啟動,或從後台進入前台顯示,會觸發 onShow, 從二級頁面回來時也會觸發。