溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

vue中4個(gè)好用的加載優(yōu)化策略

發(fā)布時(shí)間:2021-01-27 13:04:47 來源:億速云 閱讀:252 作者:小新 欄目:編程語言

這篇文章給大家分享的是有關(guān)vue中4個(gè)好用的加載優(yōu)化策略的內(nèi)容。小編覺得挺實(shí)用的,因此分享給大家做個(gè)參考,一起跟隨小編過來看看吧。

vue加載優(yōu)化策略:1、路由懶加載;2、組件按需加載;3、使用CDN加速策略;4、使用【compression-webpack-plugin】將文件打包成gzip格式。

vue加載優(yōu)化策略:

方法一、路由懶加載

  首屏加載慢的原因無非就是單頁面應(yīng)用需要加載完整個(gè)路由表上的頁面,而路由懶加載就是來解決這個(gè)問題的。如果我們能把不同路由對(duì)應(yīng)的組件分割成不同的代碼塊,然后當(dāng)路由被訪問的時(shí)候才加載對(duì)應(yīng)組件,這樣就更加高效了。下面這個(gè)就是vue路由懶加載的一個(gè)具體例子。方法很簡(jiǎn)單,如果您不想深入了解,只需按照這個(gè)格式引入路由就可以了。如果您對(duì)路由懶加載感興趣,請(qǐng)移步vue-router路由懶加載

vue中4個(gè)好用的加載優(yōu)化策略

方法二、組件按需加載

  為什么要按需加載組件呢?原因也很簡(jiǎn)單,一些組件庫包含豐富的組件,如果我們直接將其引入,不免會(huì)引入一些我們壓根用不到的組件。這樣打包起來體積會(huì)比較大,同樣顯得我們很不專業(yè)。因此按需引入就顯得很必要了。我們現(xiàn)在就拿iview組件庫為例,了解一下按需引入的流程。

1.首先引入按需加載工具 babel-plugin-import

  babel-plugin-import是babel它會(huì)在編譯過程中將 import 的寫法自動(dòng)轉(zhuǎn)換為按需引入的方式。

npm install babel-plugin-import --save-dev

2.在項(xiàng)目根目錄創(chuàng)建.babelrc文件并配置按需加載內(nèi)容

{
  "plugins": [["import", {
    "libraryName": "iview",
    "libraryDirectory": "src/components"
  }]]
}

3.在main.js配置項(xiàng)目需要加載的組件

  下面是iview的一個(gè)例子

vue中4個(gè)好用的加載優(yōu)化策略

  這里需要注意全局注冊(cè)的組件需要掛在到vue原型上,例如我們需要使用Notice組件,那我就需要

Vue.prototype.$Notice = Notice;

  這樣我們就可以正常的使用iview的組件了。

方法三、使用CDN加速策略

  在Vue項(xiàng)目中,引入到工程中的所有js、css文件,編譯時(shí)都會(huì)被打包進(jìn)vendor.js,那么vendor.js文件體積將會(huì)相當(dāng)?shù)拇?,影響首開的體驗(yàn)。解決方法是,將引用的外部js、css文件剝離開來,不編譯到vendor.js中,而是用資源的形式引用,這樣瀏覽器可以使用多個(gè)線程異步將vendor.js、外部的js等加載下來,達(dá)到加速首開的目的。外部的庫文件,就可以使用CDN資源。vue cli3.x在配置cdn是和vue cli2.x有一些區(qū)別,vue cli在升級(jí)后,代碼結(jié)構(gòu)變化比較大,配置文件集成到了vue.config.js文件中。下面以amap、axios和qs為例講述如何使用cdn加載資源。

1.在index.html中引入相關(guān)cdn資源

vue中4個(gè)好用的加載優(yōu)化策略

2.配置externals

  vue cli3.x 配置webpack是在vue.config.js的configureWebpack中

vue中4個(gè)好用的加載優(yōu)化策略

  配置完之后,我們就可以正常使用全局的Amap、axios和Qs了

方法四、使用compression-webpack-plugin將文件打包成gzip格式

  compression-webpack-plugin這個(gè)依賴在npm run build是會(huì)生成.gz文件。之后項(xiàng)目訪問的文件就是這個(gè).gz文件,正常的項(xiàng)目打包體積會(huì)減少一半還要多,是不是很吊

vue中4個(gè)好用的加載優(yōu)化策略

  下面我們來進(jìn)一步講述這個(gè)這個(gè)依賴的使用流程。

1.npm 引入

npm install compression-webpack-plugin  --save-dev

2.vue cli3.x在 vue.config.js配置webpack

vue中4個(gè)好用的加載優(yōu)化策略

3.nginx開啟gzip模式

  在上一步前端就已經(jīng)配置好了,之后就是nginx配合開啟gzip模式,這個(gè)比較簡(jiǎn)單,只要你對(duì)nginx有一點(diǎn)了解,我們?cè)趎ginx.conf中的http中配置一些代碼

vue中4個(gè)好用的加載優(yōu)化策略

4.驗(yàn)證是否配置成功

  這步就很簡(jiǎn)單了只需要查看chunk類文件的Response Headers的Content-Encoding是否是gzip即可

vue中4個(gè)好用的加載優(yōu)化策略

感謝各位的閱讀!關(guān)于“vue中4個(gè)好用的加載優(yōu)化策略”這篇文章就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,讓大家可以學(xué)到更多知識(shí),如果覺得文章不錯(cuò),可以把它分享出去讓更多的人看到吧!

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

vue
AI