微信小程序的邏輯層主要包括:小程序的初始化過程和頁面的初始化過程。微信小程序使用了App和Page方法進行了程序和頁面的注冊,使用getApp()方法來獲取App()實例。
1.小程序的初始化
小程序的注冊和初始化是通過App()函數進行的,App()注冊小程序時接受一個object參數,指定小程序的生命周期。
屬性 | 描述 |
---|---|
onLaunch | 監聽小程序初始化,初始化完成時觸發(全局觸發一次) |
onShow | 監聽小程序顯示,從后臺進入前臺時顯示 |
onHide | 從前臺進入后臺,會出發onHide |
前后臺定義:當用戶點擊左上角關閉,或者按了設備 Home 鍵離開微信,小程序并沒有直接銷毀,而是進入了后臺;當再次進入微信或再次打開小程序,又會從后臺進入前臺
2.頁面注冊
按照如下表中的順序進行執行:
屬性 | 描述 |
---|---|
onLoad | 監聽頁面加載 |
onShow | 監聽頁面顯示 |
onReady | 監聽頁面初次渲染完成 |
onHide | 監聽頁面隱藏 |
onUnload | 監聽頁面卸載 |
3.組件的生命周期
屬性 | 描述 |
---|---|
created | 在組件實例剛剛被創建時執行(此時setData()不能調用) |
attached | 在組件實例進入頁面節點樹時執行(this.data已經初始化為組件當前值) |
ready | 在組件視圖層布局完成后執行 |
moved | 組件實例被移動到節點樹另一位置時執行 |
detached | 組件實例被從頁面節點樹移除事執行 |
error | 每當組件拋出錯誤時執行 |
4.組件所在頁面的生命周期
屬性 | 描述 |
---|---|
show | 組件所在的頁面被展示時執行 |
hide | 組件所在頁面被隱藏時執行 |
resize | 組件所在的頁面尺寸 |