vue-cli中,使用第三方CDN外鏈資源(js、css)

雙十一買了一臺云服務(wù)器,正巧最近用vue寫了一個生成隨機(jī)密碼的頁面,于是部署在了該機(jī)器上。

機(jī)器的部署過程就略過,如果有人感興趣,可以聯(lián)系我,交流一下。

點擊隨機(jī)密碼生成平臺查看頁面。

部署完成之后,打開頁面,接近8秒的白屏?xí)r間,頁面才渲染出來。

what?這是咋的啦?

F12打開看了一下網(wǎng)絡(luò)請求,chunk-vendors.js文件居然有700多kb!

先簡單介紹一下,這個頁面使用 Vue Cli 3 生成,為了開發(fā)方便,引入了 element-ui 做組件庫。

這個訪問速度太慢了,簡直不能忍。但是上云服務(wù)器一看,當(dāng)時圖便宜,買的最低配的云服務(wù)器,帶寬是1Mbps,也就是說,下載頁面資源,最高速度被限制在了 128kb/s ……

不怨天不怨地,怨我當(dāng)時圖便宜。

怎么提高頁面加載速度?

云服務(wù)器的帶寬升級有點貴,暫時不考慮。

那怎么在現(xiàn)有資源下,提高頁面加載速度呢?

首先想到的,就是開啟nginx的gzip,開啟資源緩存。設(shè)置之后,多刷幾次頁面,簡直快到飛起。

但是!但是!第一次加載頁面,沒有緩存的時候還是慢啊……

還是得想辦法解決。

那就用外鏈吧,用第三方cdn的資源,不占用我們機(jī)器的帶寬。

代碼目錄

改動點如下:

  • (1)在 /public/index.html 中引入需要的js和css文件
index.html
  • (2)去掉 package.json 中對于 vue、element-ui 等相關(guān)資源的依賴

  • (3)/src/main.js ,去掉 vue、element-ui 等相關(guān)資源的 import 和 vue.use 這些語句

main.js
  • (4)配置externals。由于使用 Vue Cli 3 默認(rèn)配置,新建出來的項目沒有了 build 目錄,首先得在項目根目錄下,新建 vue.config.js 文件,里面添加以下代碼:
module.exports = {
    configureWebpack:{
        externals:{
            'Vue': 'Vue',
            'element-ui': 'element-ui',
            'clipboard':'VueClipboard'
        }
    }
}

為什么要配置 externals ?

因為在使用 vue-cli 進(jìn)行編譯的時候,可以通過這個,告訴腳手架,引用的外部資源怎么去識別。

最后效果

就這樣,放在云服務(wù)器上的資源,由原來的接近800Kb,減少到了100Kb以內(nèi),頁面加載速度顯著提升~

參考

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • PS:轉(zhuǎn)載請注明出處作者: TigerChain地址: http://www.itdecent.cn/p/db7...
    TigerChain閱讀 64,997評論 5 81
  • CDN服務(wù)商的選擇 在前面的文章中我們介紹了cdn的實現(xiàn)原理,現(xiàn)在我們來實現(xiàn)如何在正式開發(fā)中使用cdn功能。要使用...
    MsgSS閱讀 30,003評論 12 30
  • vue-cli搭建項目 確保安裝了node與npm 再目標(biāo)文件夾下打開終端 執(zhí)行cnpm i vue-cli -g...
    Akiko_秋子閱讀 3,354評論 1 22
  • 基于Vue的一些資料 內(nèi)容 UI組件 開發(fā)框架 實用庫 服務(wù)端 輔助工具 應(yīng)用實例 Demo示例 element★...
    嘗了又嘗閱讀 1,277評論 0 1
  • element-ui 文檔 Vue項目接口文檔地址 博客 session 和 cookie等 學(xué)什么? 1 如何使...
    cj_jax閱讀 4,070評論 0 10

友情鏈接更多精彩內(nèi)容