1榔至、小程序的生命周期(App.js)
App() 必須在 app.js 中注冊惶翻,且不能注冊多個。所以App()方法在一個小程序中有且僅有一個梅肤;
App() 函數(shù)用來注冊一個小程序缭乘。接受一個 object 參數(shù)沐序,其指定小程序的生命周期函數(shù)等;
生命周期方法:
onLaunch:生命周期函數(shù)–監(jiān)聽小程序初始化堕绩,當小程序初始化完成時策幼,會觸發(fā);
onShow:生命周期函數(shù)–監(jiān)聽小程序顯示奴紧,當小程序啟動特姐,或從后臺進入前臺顯示,會觸發(fā)黍氮;
onHide:生命周期函數(shù)–監(jiān)聽小程序隱藏唐含,當小程序從前臺進入后臺,會觸發(fā)沫浆;
注:前臺捷枯、后臺定義: 當用戶點擊左上角關(guān)閉,或者按了設(shè)備 Home 鍵離開微信专执,小程序并沒有直接銷毀淮捆,而是進入了后臺;當再次進入微信或再次打開小程序本股,又會從后臺進入前臺攀痊。只有當小程序進入后臺一定時間,或者系統(tǒng)資源占用過高拄显,才會被真正的銷毀苟径。
注意:
1.不要在定義于 App() 內(nèi)的函數(shù)中調(diào)用 getApp() ,使用 this 就可以拿到 app 實例躬审。
2.不要在 onLaunch 的時候調(diào)用 getCurrentPage()棘街,此時 page 還沒有生成蟆盐。
3.通過 getApp() 獲取實例之后,不要私自調(diào)用生命周期函數(shù)蹬碧。
2舱禽、頁面的生命周期
onLoad: 頁面加載
一個頁面只會調(diào)用一次。
接收頁面參數(shù) 可以獲取wx.navigateTo和wx.redirectTo及<navigator/>中的 query恩沽。
onShow: 頁面顯示
每次打開頁面都會調(diào)用一次誊稚。
onReady: 頁面初次渲染完成
一個頁面只會調(diào)用一次,代表頁面已經(jīng)準備妥當罗心,可以和視圖層進行交互里伯。
onHide: 頁面隱藏
當navigateTo或底部tab切換時調(diào)用。
onUnload: 頁面卸載
當redirectTo或navigateBack的時候調(diào)用渤闷。
3疾瓮、Tabbar
1、每個頁面的json文件都不能去掉navigationBarTitleText這個屬性,否則會報錯.
2飒箭、 "pages": [
"pages/home/home",
"pages/me/me",
"pages/index/index",
],
這個頁面的注冊一定要注意狼电,第一個一定是要是Tabbar最先顯示的,否則會出現(xiàn)底部導航看不到弦蹂。