利用report分析vue项目中各文件大小

 更新时间:2023年06月08日 14:45:40   作者:小曲曲  
这篇文章主要介绍了利用report分析vue项目中各文件大小问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教

report分析vue项目中各文件大小

vendor.js

在Vue项目中,引入到工程中的所有js、css文件,编译时都会被打包进vendor.js,浏览器在加载该文件之后才能开始显示首屏。

若是引入的库众多,那么vendor.js文件体积将会相当的大,影响首开的体验。

vue-cli 4 使用report分析vendor.js

Vue Cli(@/vue/cli)自带的webpack包体积优化工具,它可以查看各个模块的size大小,方便优化。

只需要在build后面加上 --report 参数即可。

1、 我们把命令配置到package.json里

"scripts": {
  "serve": "vue-cli-service serve",
  "build": "vue-cli-service build",
  "report": "vue-cli-service build --report"  //加入该行
},

2、执行npm run report 打包并生成report

注意:网上很多说要先安装webpack-bundle-analyzer包,其实不需要安装。

3、运行 npm run report 后

会在 build 的同时,在dist目录会生成一个report.html,打开后可看到各文件占用大小

vue项目打包文件大小分析

vuecli3.0项目搭建与webpack-bundle-analyzer分析

首先说一下vuecli低版本与cli3.0的项目结构的区别   

少了build config 文件夹  如果需要进行webpack等配置 

需要在根目录新建  vue.config.js

cli低版本

cli高版本

vue.config.js 文件内容   本次只记录  打包大小分析以及优化包大小

module.exports = {
  publicPath: './',
  // 输出文件目录
  outputDir: 'dist',
  // 静态资源目录 (js, css, img, fonts)
  assetsDir: 'assets',
  // webpack-dev-server 相关配置
  devServer: {
    // 默认打开浏览器
    open: true,
    // 端口号
    port: 8080,
  },
  // webpack 配置
  chainWebpack: (config) => {
    // 第一 增加打包文件大小分析
    if (process.env.use_analyzer) {
      config
        .plugin('webpack-bundle-analyzer')
        .use(require('webpack-bundle-analyzer').BundleAnalyzerPlugin)
    }
  },
  //webpack配置
  configureWebpack: config => {
      //警告 webpack 的性能提示
      config.performance = {
        hints: 'warning',
        //入口起点的最大体积
        maxEntrypointSize: 50000000,
        //生成文件的最大体积
        maxAssetSize: 30000000,
        //只给出 js 文件的性能提示
        assetFilter: function (assetFilename) {
          return assetFilename.endsWith('.js');
        }
      },
      // 打包忽略
      config.externals = {
        'vue': 'Vue',
        'vue-router': 'VueRouter',
        'element-ui': 'ELEMENT'
        }
  }
}

第一 打包分析 webpack-bundle-analyzer 

首先 下载依赖  npm intall webpack-bundle-analyzer –save-dev

其次  在vue.config.js文件配置  

 chainWebpack: config => {
        config
            .plugin('webpack-bundle-analyzer')
            .use(require('webpack-bundle-analyzer').BundleAnalyzerPlugin)
    }

   

可以再package.json加入启动的命令

"scripts": {
"analyz": "use_analyzer=true npm run serve"
}

效果图

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • vue 如何配置eslint代码检查

    vue 如何配置eslint代码检查

    这篇文章主要介绍了vue 如何配置eslint代码检查,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-04-04
  • 解决Vue使用bus总线时,第一次路由跳转时数据没成功传递问题

    解决Vue使用bus总线时,第一次路由跳转时数据没成功传递问题

    这篇文章主要介绍了解决Vue使用bus总线时,第一次路由跳转时数据没成功传递问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-07-07
  • vue中实现先请求数据再渲染dom分享

    vue中实现先请求数据再渲染dom分享

    下面小编就为大家分享一篇vue中实现先请求数据再渲染dom分享,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-03-03
  • 详解Vue 实例中的生命周期钩子

    详解Vue 实例中的生命周期钩子

    这篇文章主要介绍了详解Vue 实例中的生命周期钩子,在Vue的整个生命周期中,它提供了一些生命周期钩子,给了我们执行自定义逻辑的机会。
    2017-03-03
  • vue3+Element Plus实现自定义穿梭框的详细代码

    vue3+Element Plus实现自定义穿梭框的详细代码

    找到一个好用的vue树形穿梭框组件都很难,又不想仅仅因为一个穿梭框在element-ui之外其他重量级插件,本文给大家分享vue3+Element Plus实现自定义穿梭框的示例代码,感兴趣的朋友一起看看吧
    2024-01-01
  • vue3+vite项目运行后实现自动在浏览器打开

    vue3+vite项目运行后实现自动在浏览器打开

    文章介绍了如何使用Vue 3和Vite创建项目,并提供了一个简单的步骤指南,包括在package.json文件中进行配置,希望这篇经验分享对大家有所帮助,并鼓励大家支持脚本之家
    2026-01-01
  • 详解vue项目打包步骤

    详解vue项目打包步骤

    这篇文章主要介绍了vue项目打包步骤,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-03-03
  • 开发一个封装iframe的vue组件

    开发一个封装iframe的vue组件

    这篇文章主要介绍了开发一个封装iframe的vue组件,帮助大家更好的理解和学习使用vue框架,感兴趣的朋友可以了解下
    2021-03-03
  • 详解Vue.js搭建路由报错 router.map is not a function

    详解Vue.js搭建路由报错 router.map is not a function

    这篇文章主要介绍了详解Vue.js搭建路由报错 router.map is not a function,非常具有实用价值,需要的朋友可以参考下
    2017-06-06
  • Vue实现剪贴板复制功能

    Vue实现剪贴板复制功能

    这篇文章主要介绍了Vue实现剪贴板复制功能,本文给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下
    2019-12-12

最新评论