基於cli3.0的vue項目性能優化中首頁加載優化我使用到的優化方案javascript
1.在vue.config.js中設置 productionSourceMap:false,能夠使得打包事後的文件不包含未壓縮的.map文件,減小壓縮後代碼體積css
2.vue.config.js中設置以下代碼,使得首頁不預先加載其餘頁面的css和js,首頁能更快加載html
chainWebpack:config =>{ // 移除 prefetch 插件 config.plugins.delete("prefetch"); // 移除 preload 插件 config.plugins.delete('preload'); // 壓縮代碼 config.optimization.minimize(true); // 分割代碼 config.optimization.splitChunks({ chunks: 'all' }) }
3.路由使用路由懶加載的方式,而且同一路由塊的路由設置名相同,能夠使用路由打包的時候文件少一些vue
1)webpack提供的路由懶加載方式,設置webpackName相同會生成同一個js文件
const interAirListGo = r => require.ensure([], () => r(require('../views/interAirList/interAirList')), 'webpackName') const interAirListBack = r => require.ensure([], () => r(require('../views/interAirList/interAirList')), 'webpackName')
2)Vue官方提供的require(),每一個路由會打包成一個js文件
{
,每一個路由會打包成一個js文件path: '/home', name: 'home', component: resolve => require(['@/components/home'], resolve) }
3)es6提供的import()
const Home = () => import('@/components/home')
4.項目中引入圖片壓縮(圖片在線免費壓縮網站 http://tintpng.com),圖片放到cdn上面java
5.去掉項目中的console.logwebpack
6.項目裏用到的第三方js庫主要有:vue, vue-router, vuex, axio。你們知道這些依賴庫的js文件都會被一塊兒打包到vendor那個js文件裏面,若是這些你的第三方依賴庫不少,很大的話,那就會致使vendor這個文件很大,那首屏加載的速度確定會被拖慢,去掉package.json文件中無用的安裝依賴,在index.html中使用cdn文件代替es6
7.骨架屏加載 提高用戶體驗(此圖是盜圖)web