亚洲精品久久久中文字幕-亚洲精品久久片久久-亚洲精品久久青草-亚洲精品久久婷婷爱久久婷婷-亚洲精品久久午夜香蕉

您的位置:首頁技術(shù)文章
文章詳情頁

Vue通過懶加載提升頁面響應(yīng)速度

瀏覽:4日期:2022-09-30 09:17:37
概述

項目的目的是要通過數(shù)據(jù)透視表和Excel公式來分析公司的各項運營數(shù)據(jù)。不過在集成后,在開發(fā)環(huán)境頁面運行流暢,大量數(shù)據(jù)加載處理也很快。但是發(fā)布生產(chǎn)后,在用戶每次打開頁面時,加載時間上相較開發(fā)階段均有所降低,經(jīng)過排查速度變慢是由于發(fā)布包的vendor.js變大所導致的,這個文件加載每次都需300毫秒左右,由于小的Vue項目并沒有做模塊劃分,所以所有的代碼都直接打包到了vendor中,在集成了新功能后,發(fā)布包也隨之變大了。

既然找到了原因,就開始著手優(yōu)化,在前端對于需加載較大資源時,一般都采用懶加載的方式來優(yōu)化效率。

什么是懶加載?

懶加載也叫做延時加載,在網(wǎng)頁響應(yīng)時不立刻請求資源,待頁面加載完畢或者按需響應(yīng)時再加載資源,以達到提高頁面響應(yīng)速度以及節(jié)省服務(wù)器資源的謎底。網(wǎng)頁中常用的懶加載是圖片的懶加載,對于類似淘寶一樣的多圖頁面,如果等待所有圖片都下載完成再響應(yīng)用不必然造成頁面加載的卡頓。對于JS資源的加載也是同樣的道理,大JS的加載會造成JS阻塞,頁面出現(xiàn)停止響應(yīng)的假死狀態(tài)。因此可以通過按需加載的方式,提高頁面首屏的加載速度。

總結(jié)了具體優(yōu)化步驟,下面我們就開始著手優(yōu)化吧!

開始優(yōu)化

首先是項目環(huán)境:Vue 2.6

開發(fā)環(huán)境:Vue-cli 4.5 + TypeScript 3.9

劃分業(yè)務(wù)模塊

通過路由異步加載模塊,加速首屏以及其他頁面加載速度,在Vue Router中將webExcel模塊配置為懶加載模式,配置后webExcel組件會按照指定的webpackChunkName打包為單獨的文件,并在訪問webExcel路由的時候才會加載。這樣訪問home以及about頁面時并不會加載webExcel資源。

Vue通過懶加載提升頁面響應(yīng)速度

懶加載路由配置

打包發(fā)布訪問頁面,首屏秒開,直接訪問about依舊秒開。可是查看網(wǎng)絡(luò)請求時候發(fā)現(xiàn)訪問首頁時請求了about和web Excel的資源。經(jīng)過排查發(fā)現(xiàn)vue-cli在頁面中使用了preload和prefetch預(yù)加載機制,在不影響當前頁面加載的情況下預(yù)加載后續(xù)頁面需要的資源提升用戶體驗,這里為了演示清晰注釋掉prefetch的資源。

Vue通過懶加載提升頁面響應(yīng)速度

(臨時禁用prefetch預(yù)加載)

開啟路由懶加載后首頁并未加載about和webExcel。

Vue通過懶加載提升頁面響應(yīng)速度

(首頁Home網(wǎng)絡(luò)請求)

清理網(wǎng)絡(luò)請求記錄,點擊Web Excel,訪問webExcel頁面,此時會請求webExcel資源并展示組件。

Vue通過懶加載提升頁面響應(yīng)速度

(webExcel頁面網(wǎng)絡(luò)請求)

在線Excel組件懶加載

進一步優(yōu)化使用插件頁面打開速度

優(yōu)化了路由加載,為了提升用戶體驗,進一步優(yōu)化webExcel頁面,開啟組件懶加載,當需要Designer組件的時候再加載。

開啟異步組件的方式類似于路由,直接配置import組件即可,替換原有的靜態(tài)import。

Vue通過懶加載提升頁面響應(yīng)速度

(組件懶加載)

這里我們一步到位使用AsyncComponent配置,這樣在加載組件(loading)時候可以給用戶一個提示。

Vue通過懶加載提升頁面響應(yīng)速度

(頁面模板)

Vue通過懶加載提升頁面響應(yīng)速度

(異步組件懶加載)

頁面上通過displayDesigner屬性控制Designer組件是否顯示,setTimeout 3秒后開始加載Designer組件并展示。LoadingComponent在加載時展示loading狀態(tài)。

Vue通過懶加載提升頁面響應(yīng)速度

Vue通過懶加載提升頁面響應(yīng)速度

可以從網(wǎng)絡(luò)請求中看到,webExcel加載完3秒后開始請求designer資源,請求時顯示LoadingComponent,請求完畢展示Desinger 組件。

開啟gzip壓縮,加速資源請求速度

為了進一步加速資源請求,可以開啟服務(wù)器gizp壓縮,目前大部分瀏覽器都支持gzip,可以開啟服務(wù)器的gzip功能,服務(wù)器在傳輸資源之前先進行壓縮。

網(wǎng)絡(luò)請求Request中會出現(xiàn)如下內(nèi)容,就表示支持gzip

Accept-Encoding: gzip, deflate, br

Vue-cli可以在打包時就將資源提前進行g(shù)zip打包,這樣服務(wù)器直接返回打包后的資源不需要再次打包了。通過使用compression-webpack-plugin插件可以在打包時直接生成gz壓縮文件。關(guān)于gzip的配置可以根據(jù)具體部署情況設(shè)置。

總結(jié)

經(jīng)過以上優(yōu)化,首屏加載資源僅需Vue基礎(chǔ)組件和Home頁面組件,首屏加載速度回復(fù)到原始200毫秒。其他未使用Designer組件的頁面也無需加載資源,同時Designer組件加載一次,后續(xù)其他頁面再使用組件也無需再次加載

以上就是關(guān)于Vue路由和組件懶加載的一些配置,不過懶加載不是萬能的,還是要從實際需求出發(fā)決定是否使用。

以上就是Vue通過懶加載提升頁面響應(yīng)速度的詳細內(nèi)容,更多關(guān)于Vue懶加載提升響應(yīng)速度的資料請關(guān)注好吧啦網(wǎng)其它相關(guān)文章!

標簽: Vue
相關(guān)文章:
主站蜘蛛池模板: 亚洲美女激情 | 久久久91 | 青青自拍 | 国产成人午夜视频 | 91福利一区二区三区 | 日韩h片| 国产露脸对白91精品 | 亚洲第一伊人 | 久青草香蕉精品视频在线 | 4444在线观看片| 中文字幕三级久久久久久 | 精品欧美一区二区在线观看欧美熟 | 欧美日韩亚洲二区在线 | 日韩毛片大全免费高清 | 精品无人区乱码一区二区三区手机 | 国产片性视频免费播放 | 91久久青青草原线免费 | 国产视频久久久 | 尤物在线影院点击进入 | 精品国产日韩久久亚洲 | 91小视频版在线观看www | 永久免费看的啪啪网站 | 精品国产一区二区在线观看 | 888午夜不卡理论久久 | 亚洲小younv另类 | 久久www免费人成_看片高清 | 国产乱理伦片在线观看 | 好看的亚洲视频 | 精品国自产拍天天拍2021 | 一区二区免费播放 | 成人黄色免费在线观看 | 日本免费新一区二区三区 | 成人一区专区在线观看 | 亚洲欧洲另类 | 高潮影院 | 免费黄色影院 | 国产精品123区 | 欧美日韩国产成人精品 | 国产婷婷成人久久av免费高清 | 最新国产网站 | 九九精|