我們先來看下面這張圖:
小程序生命週期:
App()函數註冊一個小程序。接受一個Object參數,其指定小程序的生命週期回調等。這裏的生命週期針對整個小程序項目,而不是哪個頁面。
object參數說明:
前臺、後臺定義: 當用戶點擊左上角關閉,或者按了設備Home鍵離開微信,小程序並沒有直接銷燬,而是進入了後臺;當在此進入微信或再次打開小程序,又會從後臺進入前臺。
- onLaunch:小程序初始化完成時觸發,全局只觸發一次。
- onLoad:小程序註冊完成後,加載頁面,觸發onLoad方法。
- onShow:頁面載入後觸發onShow方法,顯示頁面。當小程序從後臺進入到前臺運行或重新進入頁面時,觸發onShow方法。
- onReady:首次顯示頁面,會觸發onReady方法,渲染頁面元素和樣式,一個頁面只會調用一次。
- onHide:當小程序後臺運行或跳轉到其他頁面時,觸發onHide方法。
- onUnload:當使用重定向方法wx.redirectTo(OBJECT)或關閉當前頁返回上一頁wx.navigateBack(),觸發onUnload
組件的生命週期:
created 組件實例化,但節點樹還未導入,因此這時不能用setData
attached 節點樹完成,可以用setData渲染節點,但無法操作節點
ready 組件佈局完成,這時可以獲取節點信息,也可以操作節點
moved 組件實例被移動到樹的另一個位置
detached 組件實例從節點樹中移除