微信小程序的運(yùn)行機(jī)制是什么

今天小編給大家分享一下微信小程序的運(yùn)行機(jī)制是什么的相關(guān)知識點(diǎn),內(nèi)容詳細(xì),邏輯清晰,相信大部分人都還太了解這方面的知識,所以分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后有所收獲,下面我們一起來了解一下吧。

創(chuàng)新互聯(lián)致力于成都做網(wǎng)站、網(wǎng)站建設(shè),成都網(wǎng)站設(shè)計(jì),集團(tuán)網(wǎng)站建設(shè)等服務(wù)標(biāo)準(zhǔn)化,推過標(biāo)準(zhǔn)化降低中小企業(yè)的建站的成本,并持續(xù)提升建站的定制化服務(wù)水平進(jìn)行質(zhì)量交付,讓企業(yè)網(wǎng)站從市場競爭中脫穎而出。 選擇創(chuàng)新互聯(lián),就選擇了安全、穩(wěn)定、美觀的網(wǎng)站建設(shè)服務(wù)!

一、本質(zhì)

首先,小程序的邏輯層和渲染層是分開的,邏輯層運(yùn)行在 JSCore 中,并沒有一個完整瀏覽器對象。

所以就沒有相關(guān)的DOM API和BOM API,這一區(qū)別導(dǎo)致了前端開發(fā)非常熟悉的一些庫,例如 jQuery、 Zepto 等,在小程序中是無法運(yùn)行的。

同時 JSCore 的環(huán)境同 NodeJS 環(huán)境也是不盡相同,所以一些 NPM 的包在小程序中也是無法運(yùn)行的。

總之,js是單線程的,小程序是雙線程,邏輯層和視圖層(渲染層)是分開的,同時運(yùn)行的。

二、通信

又因?yàn)樾〕绦蚴请p線程的,任何邏輯層和視圖層的數(shù)據(jù)傳遞都是線程之間的通信,所以具有一定的延時,所以頁面的更新就成了異步操作。

異步會使得各部分的運(yùn)行時序變得復(fù)雜一些,比如在渲染首屏的時候,邏輯層與渲染層會同時開始初始化工作,但是渲染層需要有邏輯層的數(shù)據(jù)才能把界面渲染出來。

如果渲染層初始化工作較快完成,就要等邏輯層的指令才能進(jìn)行下一步工作。

所以小程序的生命周期就起了作用,如下

微信小程序的運(yùn)行機(jī)制是什么

三、運(yùn)行機(jī)制

小程序啟動運(yùn)行兩種情況:
1.冷啟動(重新開始):用戶首次打開或者小程序被微信主動銷毀后再次打開的情況,此時小程序需要重新加載啟動,即為冷啟動。
2.熱啟動:用戶已經(jīng)打開過小程序,然后在一定時間內(nèi)再次打開該小程序,此時無需重新啟動,只需要將后臺態(tài)的小程序切換到前臺,這個過程就是熱啟動。

以上就是“微信小程序的運(yùn)行機(jī)制是什么”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家閱讀完這篇文章都有很大的收獲,小編每天都會為大家更新不同的知識,如果還想學(xué)習(xí)更多的知識,請關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道。

分享名稱:微信小程序的運(yùn)行機(jī)制是什么
URL網(wǎng)址:http://bm7419.com/article46/pccihg.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供搜索引擎優(yōu)化、微信公眾號、網(wǎng)站制作定制開發(fā)、軟件開發(fā)、網(wǎng)站排名

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

成都定制網(wǎng)站網(wǎng)頁設(shè)計(jì)