微信小程序的生命周期和運(yùn)行原理
寫微信小程序,他的生命周期不能不知道,不知道小程序就會出現(xiàn)各種bug而無法解決。小助君公眾號帶你學(xué)習(xí)小程序的生命周期和運(yùn)行原理。 小程序由兩大線程組成:負(fù)責(zé)界面的線程(view thread)和服務(wù)線程(appservice thread),各司其職由互相配合 小程序的生命周期借鑒了Android的生命周期,如果你了解過Android的APP開發(fā),那么理解小程序的就會很簡單。
界面線程有四大狀態(tài): 2.首次渲染狀態(tài):收到“服務(wù)線程”發(fā)來的初始化數(shù)據(jù)后(就是 json和js中的data數(shù)據(jù)),就開始渲染小程序界面,渲染完畢后,發(fā)送“首次渲染完畢信號”給服務(wù)線程,并將頁面展示給用戶。 3.持續(xù)渲染狀態(tài):此時界面線程繼續(xù)一直等待“服務(wù)線程”通過this.setdata()函數(shù)發(fā)送來的界面數(shù)據(jù),只要收到就重新局部渲染,也因此只要更新數(shù)據(jù)并發(fā)送信號,界面就自動更新。 4.結(jié)束狀態(tài):你懂得。
服務(wù)線程五大狀態(tài): 2 等待激活狀態(tài):接收到“界面線程初始化完成”信號后,將初始化數(shù)據(jù)發(fā)送給“界面線程”,等待界面線程完成初次渲染。
3.激活狀態(tài):收到界面線程發(fā)送來的“首次渲染完成”信號后,就進(jìn)入激活狀態(tài)既程序的正常運(yùn)行狀態(tài),并調(diào)用自定義的onReady()函數(shù)。 4.后臺運(yùn)行狀態(tài):如果界面進(jìn)入后臺,服務(wù)線程就進(jìn)入后臺運(yùn)行狀態(tài),從目前的官方解讀來說,這個狀態(tài)挺奇怪的,和激活狀態(tài)是相同的,也可以通過setdata函數(shù)更新界面的。畢竟小程序的框架剛推出,應(yīng)該后續(xù)會有很大不同吧。
============================================================================== 微信小程序 生命周期和頁面的生命周期詳細(xì)介紹轉(zhuǎn)自:http://www.jb51.net/article/103586.htm
微信小程序 生命周期和頁面的生命周期詳解: 1.小程序的生命周期——App.js App() 必須在 app.js 中注冊,且不能注冊多個。所以App()方法在一個小程序中有且僅有一個。 App() 函數(shù)用來注冊一個小程序。接受一個 object 參數(shù),其指定小程序的生命周期函數(shù)等。先上代碼: |