當前位置:編程學習大全網 - 源碼下載 - 如何優化vue中單頁應用的首屏加載速度(詳細)

如何優化vue中單頁應用的首屏加載速度(詳細)

本文給大家帶來的是關於如何優化vue中單頁應用的首屏加載速度(詳細),有壹定的參考價值。有需要的朋友可以參考壹下,希望能幫到妳。

單頁應用程序會導致項目越大,第壹個屏幕加載越慢!!!下面給出了幾種已知的優化方案。

利用CDN資源減輕服務器帶寬壓力。

路由延遲加載

把壹些靜態的js css放在其他地方(比如OSS)減輕服務器壓力。

按需加載三方資源,如iview。建議按需在iview中引入組件。

使用nginx打開gzip以減少網絡傳輸的流量

Webpack打開gzip壓縮。

如果第壹屏是登錄頁面,可以做成多個門戶,登錄頁面單獨成壹個門戶。

利用cdn資源減輕服務器帶寬壓力,將CDN資源引入index.html。

...

& ltbody & gt

& ltp id = " app " & gt

& lt/p & gt;

& lt!-生成的文件將被自動註入-& gt;

& ltscript src = "/vue/2 . 5 . 2/vue . min . js " & gt;& lt/script & gt;

& ltscript src = "/vue-router/3 . 0 . 1/vue-router . min . js " & gt;& lt/script & gt;

& ltscript src = "/vuex/3 . 0 . 1/vuex . min . js " >& lt/script & gt;

& ltscript src = "/vue-resource/1 . 5 . 1/vue-resource . min . js " & gt;& lt/script & gt;

& lt/body & gt;

...修改build/webpack.base.conf.js

模塊.導出= {

context: path.resolve(__dirname,'../'),

條目:{

應用程序:'。/src/main.js '

},

外部:{

vue': 'Vue ',

“vue路由器”:“vue路由器”,

vuex':'Vuex ',

vue-resource': 'VueResource '

},

...

}修改src/main.js src/router/index.js並註釋掉vue,vue-導入的資源。

//從“vue”導入Vue

//從“vue-resource”導入VueResource

//vue . use(vue resource)routing lazy加載const workCircle = r = & gtrequire . assure([],()= & gtr(require(' @/module/work-circle/Index '),' workCircle ')

const workCircleList = r = & gtrequire . assure([],()= & gtr(require(' @/module/work-circle/page/list '),' workcirclelist ')把壹些靜態的js css放到其他地方(比如OSS)減輕服務器的壓力。註意,這裏的js文件需要被拋出,然後導入到需要js的組件中。

按需加載三方資源,如iview。建議按需在iview中引入組件。請參考iview官方文檔iview。

使用nginx打開gzip,減少網絡傳輸的流量大小。配置nginx,參考Nginx開啟Gzip壓縮,可以大大提高頁面加載速度。

Webpack打開gzip壓縮。這裏需要和Nginx服務器合作,Nginx打開gzip。

在config/index.js中

模塊.導出= {

構建:{

...

// Gzip默認關閉許多流行的靜態主機,如

// Surge或者Netlify已經為妳gzip了所有靜態資產。

//在設置為“true”之前,請確保:

// npm安裝-保存-開發壓縮-web pack-插件

ProductionGzip: true,//這是Gzip,vue-cli building項目開始的地方,這裏的默認值是false。

productionGzipExtensions: ['js ',' css'],

//運行帶有額外參數的生成命令

//在構建完成後查看包分析器報告:

// `npm運行構建-報告'

//設置為“真”或“假”以始終打開或關閉它

bundleanalyzer report:process . env . NPM _ config _ report

}

} in }build/webpack.prod.conf.js

當使用vue-cli構建壹個項目時,默認情況下可以使用該代碼。

if(config . build . production gzip){

const compression webpackplugin = require(' compression-web pack-plugin ')

webpackConfig.plugins.push(

新的CompressionWebpackPlugin({

資產:“[路徑]”。gz[查詢]',

算法:' gzip ',

測試:新的正則表達式(

'\\.(' +

config . build . productiongzipextensions . join(' | ')+

')$'

),

門檻:10240,

最小比率:0.8

})

)

}如果第壹屏是登錄頁面,可以做成多個入口,登錄頁面隔成壹個入口。

  • 上一篇:周初明簡介
  • 下一篇:12月5日棲霞公布各鎮街各工作組疫情防控咨詢電話匯總
  • copyright 2024編程學習大全網