前言
了解生命周期函數你才能更好的將代碼放在合適的位置。例如有些函數在生命周期里面只執行一次(onLoad),所以你可以在該函數里面統一對該界面可能用到的屬性進行一些初始化的操作,這樣方便以后查看和管理。好了,話不多說了,請看下面哦。
生命周期函數有哪些
/**
* 生命周期函數--監聽頁面加載.一個頁面只會調用一次
*/
onLoad() {
console.log('App onLoad');
},
/**
* 生命周期函數--監聽頁面初次渲染完成。一個頁面只會調用一次,代表頁面已經準備妥當,可以和視圖層進行交互。
*/
onReady: function () {
console.log('App onReady');
},
/**
* 生命周期函數--監聽頁面顯示
*/
onShow: function () {
console.log('App onShow');
},
/**
* 生命周期函數--監聽頁面隱藏
*/
onHide: function () {
console.log('App onHide');
},
/**
* 生命周期函數--監聽頁面卸載
*/
onUnload: function () {
console.log('App onUnload');
},
以A界面為例,其他界面PUSH進A頁面時,A頁面中生命周期函數的執行順序(從上往下)
/**
* 生命周期函數--監聽頁面加載
*/
onLoad() {
console.log('App onLoad');
},
/**
* 生命周期函數--監聽頁面顯示
*/
onShow: function () {
console.log('App onShow');
},
/**
* 生命周期函數--監聽頁面初次渲染完成
*/
onReady: function () {
console.log('App onReady');
},
其他界面POP到進A頁面時,A頁面中生命周期函數的執行順序(從上往下)
/**
* 生命周期函數--監聽頁面顯示
*/
onShow: function () {
console.log('App onShow');
},
將A界面POP到其他界面時,A頁面中生命周期函數的執行順序(從上往下)
/**
* 生命周期函數--監聽頁面卸載
*/
onUnload: function () {
console.log('App onUnload');
},
將A頁面由前臺切至后臺時,A頁面中生命周期函數的執行順序(從上往下)
/**
* 生命周期函數--監聽頁面隱藏
*/
onHide: function () {
console.log('App onHide');
},
將A頁面由后臺切換至前臺時,A頁面中生命周期函數的執行順序(從上往下)
/**
* 生命周期函數--監聽頁面顯示
*/
onShow: function () {
console.log('App onShow');
},
onLaunch函數
為什么沒有列入生命周期函數里面呢,這里做下解釋,onLaunch函數
比較特殊,它只會在app.js
里面執行,并且整個程序在運行期間只會執行一次(相當于iOS開發中的單例,全程只會創建一次),并且他是在其與生命周期函數的前面執行的。而上面所說的生命周期函數,在每個類里面(類A, 類B,類C .....),只要滿足條件都可以執行。所以這里要做下區分哦。
/**
* 生命周期函數--當小程序初始化完成時,會觸發 onLaunch(全局只觸發一次)
*/
onLaunch: function () {
console.log('App onLaunch');
},