頁(yè)面的生命周期整體關(guān)系著頁(yè)面視圖層線程和頁(yè)面邏輯層線程,注冊(cè)頁(yè)面時(shí),Object參數(shù)中很多屬性都是生命周期函數(shù),這些函數(shù)的調(diào)用和頁(yè)面生命息息相關(guān),程序視圖層線程和邏輯層線程關(guān)系如圖2-8所示。

圖2-8Page實(shí)例的生命周期
如圖2-8,線程啟動(dòng)后視圖層和邏輯層相互監(jiān)聽(tīng),當(dāng)邏輯層線程觸發(fā)onLoad、onShow方法后會(huì)把初始數(shù)據(jù)data傳送給視圖層線程,視圖層完成第一次渲染后觸發(fā)邏輯層onReady方法,代表頁(yè)面已經(jīng)準(zhǔn)備妥當(dāng),之后我們便可通過(guò)setData方法主動(dòng)觸發(fā)視圖層渲染。當(dāng)頁(yè)面被調(diào)往后臺(tái)時(shí),觸發(fā)onHide方法,這時(shí)邏輯層線程并沒(méi)有銷(xiāo)毀,我們?nèi)匀豢梢酝ㄟ^(guò)代碼控制視圖層渲染,只是可能不會(huì)在界面上表現(xiàn)出來(lái)。當(dāng)頁(yè)面從后臺(tái)回到前臺(tái)時(shí),觸發(fā)onShow方法,最后當(dāng)頁(yè)面銷(xiāo)毀時(shí),觸發(fā)onUnload方法。
整體來(lái)看onLoad、onReady和onUnload方法在生命周期中只會(huì)調(diào)用一次,生命周期內(nèi)顯示、隱藏頁(yè)面都是觸發(fā)onShow和onHide方法,在路由方式中,只有頁(yè)面重定向和頁(yè)面返回會(huì)結(jié)束當(dāng)前頁(yè)面生命周期,當(dāng)進(jìn)入一個(gè)已加載的頁(yè)面時(shí)只會(huì)觸發(fā)onShow方法,不會(huì)觸發(fā)onLoad和onReady方法。
您當(dāng)前瀏覽的文章:《微信小程序頁(yè)面生命周期講解》由小程序開(kāi)發(fā)服務(wù)品牌九尾狐整理發(fā)布。
轉(zhuǎn)載請(qǐng)注明:http://www.jytsl.com.cn/index.php/shows/6/20.html
文章標(biāo)簽:


