电脑知识|欧美黑人一区二区三区|软件|欧美黑人一级爽快片淫片高清|系统|欧美黑人狂野猛交老妇|数据库|服务器|编程开发|网络运营|知识问答|技术教程文章 - 好吧啦网

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

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

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

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

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

什么是懶加載?

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

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

開(kāi)始優(yōu)化

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

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

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

通過(guò)路由異步加載模塊,加速首屏以及其他頁(yè)面加載速度,在Vue Router中將webExcel模塊配置為懶加載模式,配置后webExcel組件會(huì)按照指定的webpackChunkName打包為單獨(dú)的文件,并在訪(fǎng)問(wèn)webExcel路由的時(shí)候才會(huì)加載。這樣訪(fǎng)問(wèn)home以及about頁(yè)面時(shí)并不會(huì)加載webExcel資源。

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

懶加載路由配置

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

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

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

開(kāi)啟路由懶加載后首頁(yè)并未加載about和webExcel。

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

(首頁(yè)Home網(wǎng)絡(luò)請(qǐng)求)

清理網(wǎng)絡(luò)請(qǐng)求記錄,點(diǎn)擊Web Excel,訪(fǎng)問(wèn)webExcel頁(yè)面,此時(shí)會(huì)請(qǐng)求webExcel資源并展示組件。

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

(webExcel頁(yè)面網(wǎng)絡(luò)請(qǐng)求)

在線(xiàn)Excel組件懶加載

進(jìn)一步優(yōu)化使用插件頁(yè)面打開(kāi)速度

優(yōu)化了路由加載,為了提升用戶(hù)體驗(yàn),進(jìn)一步優(yōu)化webExcel頁(yè)面,開(kāi)啟組件懶加載,當(dāng)需要Designer組件的時(shí)候再加載。

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

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

(組件懶加載)

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

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

(頁(yè)面模板)

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

(異步組件懶加載)

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

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

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

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

開(kāi)啟gzip壓縮,加速資源請(qǐng)求速度

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

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

Accept-Encoding: gzip, deflate, br

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

總結(jié)

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

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

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

標(biāo)簽: Vue
相關(guān)文章:
主站蜘蛛池模板: 医疗仪器模块 健康一体机 多参数监护仪 智慧医疗仪器方案定制 血氧监护 心电监护 -朗锐慧康 | LOGO设计_品牌设计_VI设计 - 特创易 | 吹田功率计-长创耐压测试仪-深圳市新朗普电子科技有限公司 | 好杂志网-首页| 仓储笼_金属箱租赁_循环包装_铁网箱_蝴蝶笼租赁_酷龙仓储笼租赁 测试治具|过炉治具|过锡炉治具|工装夹具|测试夹具|允睿自动化设备 | 多功能干燥机,过滤洗涤干燥三合一设备-无锡市张华医药设备有限公司 | 湖州织里童装_女童男童中大童装_款式多尺码全_织里儿童网【官网】-嘉兴嘉乐网络科技有限公司 | 沈阳缠绕膜价格_沈阳拉伸膜厂家_沈阳缠绕膜厂家直销 | 聚氨酯保温钢管_聚氨酯直埋保温管道_聚氨酯发泡保温管厂家-沧州万荣防腐保温管道有限公司 | 印刷人才网 印刷、包装、造纸,中国80%的印刷企业人才招聘选印刷人才网! | 济南玻璃安装_济南玻璃门_济南感应门_济南玻璃隔断_济南玻璃门维修_济南镜片安装_济南肯德基门_济南高隔间-济南凯轩鹏宇玻璃有限公司 | 桑茶-七彩贝壳桑叶茶 长寿茶 | 清水-铝合金-建筑模板厂家-木模板价格-铝模板生产「五棵松」品牌 | 翅片管换热器「型号全」_厂家-淄博鑫科环保 | 润滑油加盟_润滑油厂家_润滑油品牌-深圳市沃丹润滑科技有限公司 琉璃瓦-琉璃瓦厂家-安徽盛阳新型建材科技有限公司 | Boden齿轮油泵-ketai齿轮泵-yuken油研-无锡新立液压有限公司 | hc22_hc22价格_hc22哈氏合金—东锜特殊钢 | 小型手持气象站-空气负氧离子监测站-多要素微气象传感器-山东天合环境科技有限公司 | 济南菜鸟驿站广告|青岛快递车车体|社区媒体-抖音|墙体广告-山东揽胜广告传媒有限公司 | 全自动不干胶贴标机_套标机-上海今昂贴标机生产厂家 | 天助网 - 中小企业全网推广平台_生态整合营销知名服务商_天助网采购优选 | 粉末冶金注射成型厂家|MIM厂家|粉末冶金齿轮|MIM零件-深圳市新泰兴精密科技 | 道康宁消泡剂-瓦克-大川进口消泡剂供应商 | 线材成型机,线材折弯机,线材成型机厂家,贝朗自动化设备有限公司1 | 热工多功能信号校验仪-热电阻热电偶校验仿真仪-金湖虹润仪表 | 钢托盘,铁托盘,钢制托盘,镀锌托盘,饲料托盘,钢托盘制造商-南京飞天金属13260753852 | 上海冠顶工业设备有限公司-隧道炉,烘箱,UV固化机,涂装设备,高温炉,工业机器人生产厂家 | 雨燕360体育免费直播_雨燕360免费NBA直播_NBA篮球高清直播无插件-雨燕360体育直播 | 机械立体车库租赁_立体停车设备出租_智能停车场厂家_春华起重 | 耐高温电缆厂家-远洋高温电缆 | TPE塑胶原料-PPA|杜邦pom工程塑料、PPSU|PCTG材料、PC/PBT价格-悦诚塑胶 | 集菌仪_智能集菌仪_全封闭集菌仪_无菌检查集菌仪厂家-那艾 | 东莞画册设计_logo/vi设计_品牌包装设计 - 华略品牌设计公司 | 涂层测厚仪_光泽度仪_uv能量计_紫外辐照计_太阳膜测试仪_透光率仪-林上科技 | 上海公司注册-代理记账-招投标审计-上海昆仑扇财税咨询有限公司 上海冠顶工业设备有限公司-隧道炉,烘箱,UV固化机,涂装设备,高温炉,工业机器人生产厂家 | 新密高铝耐火砖,轻质保温砖价格,浇注料厂家直销-郑州荣盛窑炉耐火材料有限公司 | 大通天成企业资质代办_承装修试电力设施许可证_增值电信业务经营许可证_无人机运营合格证_广播电视节目制作许可证 | 北京印刷厂_北京印刷_北京印刷公司_北京印刷厂家_北京东爵盛世印刷有限公司 | 密封圈_泛塞封_格莱圈-[东莞市国昊密封圈科技有限公司]专注密封圈定制生产厂家 | 巨野月嫂-家政公司-巨野县红墙安康母婴护理中心 | 球磨机,节能球磨机价格,水泥球磨机厂家,粉煤灰球磨机-吉宏机械制造有限公司 |