Vue的性能优化方案和打包分析工具。

文章目录


一、性能分析

我们集成了功能,写了很多组件,最终都会打包成一堆文件,那么真实运行的性能如何呢?

我们可以使用vue-cli本身提供的性能分析工具,对我们开发的所有功能进行打包分析

执行命令:

c 复制代码
$ npm run preview -- --report
// 这个命令会从我们的入口main.js进行依赖分析,分析出最大的包,方便我们进行观察和优化

执行完这个命令,我们会看到如下的页面。

如图,方块越大,说明该文件占用的文件越大,文件越大,对于网络带宽和访问速度的要求就越高,所以我们要进行优化。

二、优化方案

1.webpack排除打包

找到包体积比较大的,排除。
vue.config.js

c 复制代码
configureWebpack: {
  // 配置单页应用程序的页面的标题
  name: name,
  externals: {
    // key(要排除的包名), value(引入的CDN包的全局变量名) 
    'vue': 'Vue',
    'element-ui': 'ELEMENT',
    'xlsx': 'XLSX',
    'cos-js-sdk-v5': 'COS'
  },
  resolve: {
    alias: {
      '@': resolve('src')
    }
  }
},

再次运行,我们会发现包的大小已经大幅减小,但还是有的包会占用比较大。

2.CDN配置

注意: 此时由于排除了一些包, 所以代码是无法运行的! 必须配置 cdn 包的加载

vue.config.js

c 复制代码
const cdn = {
  css: [
    'https://unpkg.com/element-ui/lib/theme-chalk/index.css' // element-ui css 样式表
  ],
  js: [
    // vue must at first!
    'https://cdn.jsdelivr.net/npm/vue@2.6.14', // vuejs
    'https://unpkg.com/element-ui/lib/index.js', // element-ui js
    'https://cdn.jsdelivr.net/npm/xlsx@0.16.6/dist/jszip.min.js',
    'https://cdn.jsdelivr.net/npm/xlsx@0.16.6/dist/xlsx.full.min.js',
    'https://cdn.jsdelivr.net/npm/cos-js-sdk-v5/dist/cos-js-sdk-v5.min.js'
  ]
}

总结

性能优化的方案有多种,不限于文章方案,总之合理配置优化方案,有助于用户的体验。

相关推荐
2501_9209317035 分钟前
React Native鸿蒙跨平台采用ScrollView的horizontal属性实现横向滚动实现特色游戏轮播和分类导航
javascript·react native·react.js·游戏·ecmascript·harmonyos
0思必得02 小时前
[Web自动化] Selenium处理动态网页
前端·爬虫·python·selenium·自动化
超级大只老咪3 小时前
快速进制转换
笔记·算法
东东5163 小时前
智能社区管理系统的设计与实现ssm+vue
前端·javascript·vue.js·毕业设计·毕设
catino3 小时前
图片、文件的预览
前端·javascript
2501_920931704 小时前
React Native鸿蒙跨平台实现推箱子游戏,完成玩家移动与箱子推动,当所有箱子都被推到目标位置时,玩家获胜
javascript·react native·react.js·游戏·ecmascript·harmonyos
layman05285 小时前
webpack5 css-loader:从基础到原理
前端·css·webpack
半桔5 小时前
【前端小站】CSS 样式美学:从基础语法到界面精筑的实战宝典
前端·css·html
AI老李5 小时前
PostCSS完全指南:功能/配置/插件/SourceMap/AST/插件开发/自定义语法
前端·javascript·postcss