92国产精品视频_亚洲a级在线观看_国产精品电影观看_国产精品免费观看在线_精品伊人久久97_亚洲人成在线观_尤物九九久久国产精品的特点_成人激情在线播放_成人黄色大片在线免费观看_亚洲成人精品久久久_久久免费视频在线观看_久久精品国产一区_国产一区二区三区18_亚洲欧美中文字幕在线一区_日韩美女中文字幕_日韩视频免费在线

Vue移動端項目優化過程

2020-3-15    前端達人

文章目錄

前言

一、白屏時間過長分析

二、針對性優化

針對animate.css

針對mint-ui的優化

針對圖片的優化

三、webpack打包優化與分析

webpack-bundle-analyzer打包分析

打包優化

四、優化后線上測試速度提升

五、優化總結

前言

最近在做項目時,測試提出了在App端的H5項目入口加載時間過長,白屏等待過久,需要優化的問題,于是著手開始分析:



項目技術棧:基于Vue全家桶做的一個移動端類似WebApp的項目,使用到的第三方庫有:mint-ui, echarts,momentjs。

項目痛點:白屏時間過長

一、白屏時間過長分析

 通過訪問線上環境,結合Chrome devtool中Network和Performance功能可以具體分析整個白屏的耗時主要在哪一塊兒

Network耗時記錄:

點擊查看原圖

Performance性能面板

點擊查看原圖

通過上面兩張圖分析,從瀏覽器發起請求到解析HTML完成這一過程中:
animate.css, mini-ui.css的請求耗時最長。
圖片過大耗時。
二、針對性優化
針對animate.css
animate.css由于使用的是第三方CDN(國外服務器)所有請求時間相對較長,所以如果必須要用animate.css那么可以下載下來作為本地資源,也可以使用國內CDN,或者不用animate.css,而是針對使用到的幾個CSS動畫,直接自己造輪子
針對mint-ui的優化
由于mint-ui在原項目中使用的是全局引用的方式,這才導致打包資源過大,css單獨請求耗時過長的問題,所以主要解決方案是按需引入mint-ui,借助 babel-plugin-component,我們可以只引入需要的組件,以達到減小項目體積的目的。

安裝babel-plugin-component, 若已安裝可忽略
修改 .babelrc (重點在plugins中):


{
  "presets": [
    ["env", { "modules": false }],
    "stage-2"
  ],
  "plugins": ["transform-runtime",["component", [
      {
          "libraryName": "mint-ui",
          "style": true
      }
  ]]],
  "comments": false,
  "env": {
    "test": {
      "presets": ["env", "stage-2"],
      "plugins": [ "istanbul" ]
    }
  }
}


在main.js中引用使用到的插件


import Vue from 'vue'
import { Button, Cell } from 'mint-ui'
import 'mint-ui/lib/style.min.css'  // 引用CSS
import App from './App.vue'

Vue.component(Button.name, Button)
Vue.component(Cell.name, Cell)
/* 或寫為
 * Vue.use(Button)
 * Vue.use(Cell)
 */

new Vue({
  el: '#app',
  components: { App }
})


在使用的組件中改為按需引用組件


import Vue from 'vue'
 var Popup = Vue.component('mt-popup')
 var Swipe = Vue.component('mt-swipe')
 var SwipeItem = Vue.component('mt-swipe-item')
 export default {
    name:'my-component',
    components:{
     Popup,
     Swipe,
     SwipeItem
    }
}

此按需引入方案也同樣適用于其他第三方UI組件庫



針對圖片的優化

圖片小圖通過webpack可以直接轉為base64,而大圖可以通過壓縮或者換格式的方式來優化,這里推薦一個好用的圖片壓縮工具,工具:tinyPNG,如下是圖片轉換前后對比


點擊查看原圖


三、webpack打包優化與分析

在完成了上述優化以后,下面著重關注下webpack打包后生成的文件大小,看還有沒有可以優化的余地。由于項目中已經通過路由按需加載的方式來做了功能拆分,所以通過webpack打包后生成了很多分散的js文件,如下圖:


20200313153537713.png

通過上圖分析可以知道打包后有幾個文件相對較大,vendor.js都知道是第三方庫文件打包形成,之前通過mint-ui按需加載會有一定的變化,后面記錄。這里著重看另兩個帶hash的js文件,這里并看不出來它為什么這么大,所以這里需要用到webpack打包分析工具來做進一步的打包文件分析:webpack-bundle-analyzer

webpack-bundle-analyzer打包分析

它的作用如下圖,即在打包后生成打包文件大小分析圖,方便我們更加直觀的看到文件大小和引用情況

點擊查看原圖



  • 這里先介紹下webpack-bundle-analyzer的簡單使用
  1. 安裝
npm intall -D webpack-bundle-analyzer
  1. 修改webpack.pro.conf.js. (這里由于只是用于生產打包分析且是通過vue-cli生成的項目框架)
var BundleAnalyzerPlugin = require('webpack-bundle-analyzer').BundleAnalyzerPlugin

module.exports = {
    // ...
    plugins:[
        new BundleAnalyzerPlugin()
    ]
}

運行npm run build,(webpack默認會在打包完成時生成分析圖)



版權聲明:本文為CSDN博主「Sophie_U」的原創文章,遵循 CC 4.0 BY-SA 版權協議,轉載請附上原文出處鏈接及本聲明。
原文鏈接:https://blog.csdn.net/Sophie_U/article/details/104840167

日歷

鏈接

個人資料

藍藍設計的小編 http://www.skdbbs.com

存檔

92国产精品视频_亚洲a级在线观看_国产精品电影观看_国产精品免费观看在线_精品伊人久久97_亚洲人成在线观_尤物九九久久国产精品的特点_成人激情在线播放_成人黄色大片在线免费观看_亚洲成人精品久久久_久久免费视频在线观看_久久精品国产一区_国产一区二区三区18_亚洲欧美中文字幕在线一区_日韩美女中文字幕_日韩视频免费在线
亚洲精品一区久久久久久| 日韩精品在线观看视频| 国产精品久久久久久久久久免费| 久久人人爽人人爽人人片av高清| 欧美理论电影网| 亚洲欧美制服另类日韩| 97在线观看免费| 成人久久久久久| 国产原创欧美精品| 最近的2019中文字幕免费一页| 亚洲欧美激情视频| 亚洲第一精品自拍| 国产精品久久久久久中文字| 亚洲小视频在线| 国产精品亚洲视频在线观看| www日韩中文字幕在线看| 九九视频这里只有精品| 国产91精品网站| 国产在线视频欧美| 久久99视频免费| 成人激情av在线| 欧美日韩一区二区精品| 亚洲激情成人网| 国产伦精品一区二区三区精品视频| 国产亚洲成av人片在线观看桃| 欧美限制级电影在线观看| 91国偷自产一区二区三区的观看方式| 色悠久久久久综合先锋影音下载| 日韩电影中文字幕在线观看| 2024亚洲男人天堂| 91中文精品字幕在线视频| 另类少妇人与禽zozz0性伦| 亚洲精品影视在线观看| 国产亚洲aⅴaaaaaa毛片| 精品久久久久久久久久久久| 中文字幕日韩精品在线观看| 亚洲欧美日韩精品| 亚洲qvod图片区电影| 色婷婷综合成人| 2020欧美日韩在线视频| 日韩在线激情视频| 成人免费网站在线| 精品调教chinesegay| 日本免费一区二区三区视频观看| 久久久久久亚洲精品不卡| 91精品国产综合久久久久久久久| 91精品国产高清久久久久久久久| 亚洲а∨天堂久久精品9966| 国产精品麻豆va在线播放| 亚洲性无码av在线| 九九九热精品免费视频观看网站| 成人在线视频网站| 国产一区二区三区网站| 国产精品久久久久一区二区| 91sa在线看| 国产精品免费网站| 久久影院免费观看| 亚洲精品少妇网址| 亚洲日本aⅴ片在线观看香蕉| 久久激情视频免费观看| 亚洲国模精品私拍| 欧美性生交xxxxx久久久| 国内伊人久久久久久网站视频| 久久久久久久久国产| 国产91对白在线播放| 精品国产自在精品国产浪潮| 亚洲va欧美va国产综合剧情| 欧美久久精品午夜青青大伊人| 日本三级韩国三级久久| 欧美另类极品videosbestfree| 亚洲一区二区三区在线视频| 国产成人一区二区三区| 欧美专区在线观看| 免费不卡在线观看av| 九九热r在线视频精品| 久久久久久久久久久网站| 久久理论片午夜琪琪电影网| 欧美激情免费观看| 国产日韩中文在线| 亚洲欧美国产精品久久久久久久| 66m—66摸成人免费视频| 亚洲人成网站在线播| 永久免费精品影视网站| 亚洲天堂av图片| 国产精品视频一区二区三区四| 国产乱人伦真实精品视频| 亚洲影视中文字幕| 亚洲人成网在线播放| 色偷偷av一区二区三区| 国产精品一区二区久久国产| 国产亚洲一区二区在线| 精品亚洲男同gayvideo网站| 国产69久久精品成人| 国产一区二区在线播放| 久久亚洲精品一区| 亚洲成人av中文字幕| 亚洲深夜福利视频| 欧美日韩中文字幕在线视频| 日韩va亚洲va欧洲va国产| 在线性视频日韩欧美| 国产精品亚洲欧美导航| 精品国产精品自拍| 国产成人高清激情视频在线观看| 中文字幕日韩免费视频| 中文字幕久久久| 久久免费少妇高潮久久精品99| 国产伦精品一区二区三区精品视频| 热re99久久精品国产66热| 97视频国产在线| 91久久综合亚洲鲁鲁五月天| 亚洲自拍小视频| 亚洲精品99久久久久中文字幕| 91成人福利在线| 黄色成人在线免费| 欧洲日本亚洲国产区| 国产伦精品免费视频| 久久91亚洲精品中文字幕奶水| 亚洲最大中文字幕| 中文字幕日韩av综合精品| 日韩电影免费在线观看中文字幕| 国产精品福利观看| 91精品国产777在线观看| 久久韩剧网电视剧| 日韩成人中文字幕| 亚洲美女中文字幕| 亚洲第一页自拍| 中文字幕亚洲欧美| 欧美激情视频在线免费观看 欧美视频免费一| 精品视频—区二区三区免费| 97超级碰碰人国产在线观看| 日韩在线视频网站| 欧美肥婆姓交大片| 欧美日韩亚洲激情| 91免费看视频.| 日韩a**中文字幕| 欧美美女18p| 久热爱精品视频线路一| 国产精品1区2区在线观看| 成人精品视频99在线观看免费| 欧洲美女免费图片一区| 国产精品爱久久久久久久| 亚洲精品www久久久久久广东| 欧洲亚洲妇女av| 国产精品久久久久久网站| 日韩在线免费视频观看| 日韩欧美999| 国产综合在线视频| 久久这里只有精品99| 欧美国产激情18| 国产精品第七影院| 国产精品永久免费视频| 欧美精品免费在线观看| 日韩av电影在线播放| 亚洲午夜未满十八勿入免费观看全集| 久久成年人免费电影| 国产精品旅馆在线| 国产日本欧美一区二区三区| 91麻豆国产精品| 欧美亚洲另类在线| …久久精品99久久香蕉国产| 69**夜色精品国产69乱| 国产精品丝袜白浆摸在线| 国产精品99导航| 国产成人精品最新|