webpack打包优化

vue-cli3 webpack优化

. 开启Gzip压缩

vue.config.js

webpack配置

安装包
npm install compression-webpack-plugin -D

const CompressionWebpackPlugin = require('compression-webpack-plugin')

module.exports = { 

  configureWebpack: config => {

    // 开发环境不需要gzip
    if (process.env.NODE_ENV !== 'production') return

    config.plugins.push(

      new CompressionWebpackPlugin({

        // 正在匹配需要压缩的文件后缀

        test: /\.(js|css|svg|woff|ttf|json|html)$/,

        // 大于10kb的会压缩

        threshold: 10240,

        // 其余配置查看compression-webpack-plugin
      })
    )
  }
}

服务端配置 开启gzip

添加gzip_static on; #静态压缩


 location / {

      root /med/dist;

      index /index.html;

      try_files $uri $uri/ /index.html;

      gzip_static on; #静态压缩

  }

}

.组件按需加载

elementUI

安装


npm install babel-preset-env -D

npm install babel-plugin-component -D

babel.config.js


  plugins: [

    [
      'component',

      {
        'libraryName': 'element-ui',

        'styleLibraryName': 'theme-chalk'

      }

    ]

  ]

main.js 按需引入


import Vue from 'vue';

import {
  Dialog,
  Input,
  Button,
  Table,
  TableColumn,
  Tooltip,
  ...
  Loading,
  Message,
} from 'element-ui';

Vue.use(Dialog);

Vue.use(Input);

Vue.use(Button);

Vue.use(Table);

Vue.use(TableColumn);

Vue.use(Tooltip);

...

Vue.use(Loading.directive);

Vue.prototype.$loading = Loading.service;

Vue.prototype.$message = Message;

路由懒加载


    {
          name: 'collectioner_video_list',

          path: 'ownerOrder',

          // component: ownerOrder,

           component: resolve => require(['@/pages/moniterCenter/ownerOrder'], resolve),

           meta: {

                 requiresAuth: true

          }

     }

原文地址:https://www.cnblogs.com/goddess/p/12088138.html

时间: 2024-10-07 11:42:46

webpack打包优化的相关文章

[转] Webpack 打包优化之体积篇

谈及如今欣欣向荣的前端圈,不仅有各类框架百花齐放,如Vue, React, Angular等等,就打包工具而言,发展也是如火如荼,百家争鸣:从早期的王者Browserify, Grunt,到后来赢得宝座的 Gulp, 以及独树一帜的 fis3, 以及下一代打包神器 Rollup :在 browserify,grunt,gulp,rollup,webpack 可以一窥其中部分对比.在本文要探究的是,当前打包工具绝对霸者 Webpack. Webpack Package optimization W

Webpack 打包优化之体积篇

谈及如今欣欣向荣的前端圈,不仅有各类框架百花齐放,如Vue, React, Angular等等,就打包工具而言,发展也是如火如荼,百家争鸣:从早期的王者Browserify, Grunt,到后来赢得宝座的 Gulp, 以及独树一帜的 fis3, 以及下一代打包神器 Rollup :在 browserify,grunt,gulp,rollup,webpack 可以一窥其中部分对比.在本文要探究的是,当前打包工具绝对霸者 Webpack. Webpack Package optimization W

基于CommonsChunkPlugin,webpack打包优化

前段时间一直在基于webpack进行前端资源包的瘦身.在项目中基于路由进行代码分离,http://www.cnblogs.com/legu/p/7251562.html.但是打包的文件还是很大,特别是通过CommonsChunkPlugin的async:true打包的chunk的公共包不可控.今天就通过CommonsChunkPlugin插件的理解,来优化这个问题 问题描述详细些,我们的打包是基于router进行的chunk分割,比如router有10个,router1,router2用到了ec

webpack打包优化并开启gzip

应用场景:项目使用webpack2.x进行打包,打包后静态资源通过nginx转发配置: 问题:webpack打包后的资源文件特别,特别大,没打包之前页面一个页面js有2M左右(其中已经抽离了css)? 优化一:一看js这么大肯定是没有关闭source-map,先将webpack配置文件中dev-tool:false, 优化二:使用compresion-webpack-plugin插件将静态资源压缩,并生成.gz文件,配置如下: 具体用法请参照:http://www.css88.com/doc/w

(webpack系列二)webpack打包优化探索

虽然webpack的已经升级到了webpack4,而我们目前还在使用webpack3,但其中的优化点都大同小异,升级后同样适用. 性能优化初步原则 减小代码量 减小请求数 最大化利用浏览器缓存 这三条原则永远是一切优化的前提 优化配置 升级webpack 3,优化js的编译能力(Scope Hoisting) 1// 主要配置2plugins:[3  new webpack.optimize.ModuleConcatenationPlugin()4] 合理规划 entry 入口配置(平衡vend

Vue发布过程中遇到坑,以及webpack打包优化

前言 这段时间,本人自己做了一个vue画面部署到自己的服务器上,发现运行速度慢的的惊人,虽然服务器很渣(本人没什么钱,只能租最差的服务器,主要是给自己学习用的),但是这样开发出来的网站简直不能用,所以就查阅各种资料和网站,一步一步把代码包优化.这篇文章主要是把我调优的过程记录下来. 项目的基础框架是通过TypeScript官网取得的.各种基础框架模版 项目的构成 vue + ant-design + mysql + TypeScript vue项目地址 最后,关于如何在vue里面实现按需加载,请

webpack打包优化之react-router路由分割

我们在用react全家桶做项目打包出来的文件是全部打包在一起的,(js一个文件,css一个文件),这样进入首页之后全部加载出来.这样在一个小的项目时没有问题,但是在手机端或者是在pc端比较大的项目,首屏加载时间很慢见识一个很大的问题,会影响用户的使用体验,那么接下来讲一线解决方法 首先想一下要如何解决,要是首屏只加载一些必要的资源,在路由变化时在加载相应的打包文件,这样就可以了.那要如何做呢,这就要来说以下路由分割了,路由分割就是根据路由打包出相应的包,然后在路由变换时在加载这个路由对应的包.接

Webpack打包进阶

说在前面 由于使用了React直出,页面各项性能指标使人悦目.本篇将深入探讨目前PC部落所采用webpack打包优化策略,以及探讨PC部落并未使用的 webpack Code Splitting 代码分包.异步模块加载特性.看看它们又是如何对PC部落的性能起到进一步的催化作用. 为什么要使用webpack 如果你曾经使用过 Broserify, RequireJS 或类似的打包工具,并注重:代码分包.异步加载.静态资源打包(图片/CSS).那么 webpack 就是帮你构建项目的利器!简单一句话

webpack打包经验——处理打包文件体积过大的问题

前言 最近对一个比较老的公司项目做了一次优化,处理的主要是webpack打包文件体积过大的问题. 这里就写一下对于webpack打包优化的一些经验. 主要分为以下几个方面: 去掉开发环境下的配置 ExtractTextPlugin:提取样式到css文件 webpack-bundle-analyzer:webpack打包文件体积和依赖关系的可视化 CommonsChunkPlugin:提取通用模块文件 提取manifest:让提取的公共js的hash值不要改变 压缩js,css,图片 react-