webpack4 css打包压缩问题的解决


Posted in Javascript onMay 18, 2018

这两天一直在练习这个webpack4, 发现有好多问题和坑,做开发嘛,一定要有喜欢出问题并喜欢解决问题,坚决踩个坑填个坑的不怕死小强精神!

webpack4 在配置上其实是可以是想production和development的,

// webpack.config.js

module.exports = {
  // webpack会根据mode进行对Js打包,development压缩,production下面自动压缩,亲测没有问题
  mode: 'development' // production
}

但是从js里面分离出来的css怎么打包呢?

我找了一天的相关文章,好多都是说webpack自动支持css压缩,有的是说需要插件,对,就是用插件

optimize-css-assets-webpack-plugin
不过一定要看Npm官方网站

⚠️ For webpack v3 or below please use optimize-css-assets-webpack-plugin@3.2.0. The optimize-css-assets-webpack-plugin@4.0.0 version and above supports webpack v4.

做法是先安装 optimize-css-assets-webpack-plugin

const optimizeCss = require('optimize-css-assets-webpack-plugin');
module.exports = {  
  .....,
  //
  plugins: [
    new optimizeCss({
      assetNameRegExp: /\.style\.css$/g,
      cssProcessor: require('cssnano'),
      cssProcessorOptions: { discardComments: { removeAll: true } },
      canPrint: true
    }),
  ],
  // 这个还待研究,看字面意思是优化的意思
  optimization: {
    // minimize: true,
    minimizer: [new optimizeCss({})],

  }  
}

以上里面的代码我也是看别人写的,所以还需要安装一个'cssnano'的包

之后运行生产环境打包命令,哦也,css果然压缩了,但是看js,居然没有被压缩,不加上述代码的话js确实是默认压缩的,于是网上又找解决方案,都说webpack4只要设置mode production即可,但是现在有个问题,压缩了css之后js就不会压缩,于是带着试试看的心里继续安装之前压缩Js的插件 uglify-webpack-plugin

最后发现问题解决了,只是我的心得,也是误打误撞,但如果有好的解决方案请大家积极留言,共同进步,把webpack吃透!

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
js中各种类型的变量在if条件中是true还是false
Jul 16 Javascript
详解Javascript动态操作CSS
Dec 08 Javascript
windows8.1+iis8.5下安装node.js开发环境
Dec 12 Javascript
node.js中的http.response.getHeader方法使用说明
Dec 14 Javascript
jQuery插件HighCharts实现2D柱状图、折线图的组合多轴图效果示例【附demo源码下载】
Mar 09 Javascript
Vue实现按钮旋转和移动位置的实例代码
Aug 09 Javascript
读懂CommonJS的模块加载
Apr 19 Javascript
Layui实现带查询条件的分页
Jul 27 Javascript
js实现随机div颜色位置 类似满天星效果
Oct 24 Javascript
js实现车辆管理系统
Aug 26 Javascript
vue 使用原生组件上传图片的实例
Sep 08 Javascript
vant组件中 dialog的确认按钮的回调事件操作
Nov 04 Javascript
微信小程序实现长按删除图片的示例
May 18 #Javascript
解决Vue中mounted钩子函数获取节点高度出错问题
May 18 #Javascript
Vue数据双向绑定原理及简单实现方法
May 18 #Javascript
Swiper 4.x 使用方法(移动端网站的内容触摸滑动)
May 17 #Javascript
Vue中对比scoped css和css module的区别
May 17 #Javascript
vue引用js文件的多种方式(推荐)
May 17 #Javascript
vue router+vuex实现首页登录验证判断逻辑
May 17 #Javascript
You might like
php判断字符串在另一个字符串位置的方法
2014/02/27 PHP
PHP把空格、换行符、中文逗号等替换成英文逗号的正则表达式
2014/05/04 PHP
php实现有趣的人品测试程序实例
2015/06/08 PHP
Laravel框架路由设置与使用示例
2018/06/12 PHP
Gambit vs CL BO3 第一场 2.13
2021/03/10 DOTA
修改好的jquery滚动字幕效果实现代码
2011/06/22 Javascript
JavaScript中:表达式和语句的区别[译]
2012/09/17 Javascript
JavaScript实现打字效果的方法
2015/07/10 Javascript
js匿名函数作为函数参数详解
2016/06/01 Javascript
Angularjs 设置全局变量的方法总结
2016/10/20 Javascript
JavaScript实现的微信二维码图片生成器的示例
2016/10/26 Javascript
Javascript中关于Array.filter()的妙用详解
2016/12/04 Javascript
javascript  数组排序与对象排序的实例
2017/07/17 Javascript
javascript 面向对象实战思想分享
2017/09/07 Javascript
three.js中文文档学习之如何本地运行详解
2017/11/20 Javascript
使用命令行工具npm新创建一个vue项目的方法
2017/12/27 Javascript
微信小程序收藏功能的实现代码
2018/06/12 Javascript
新手简单了解vue
2019/05/29 Javascript
jQuery实现简单弹幕效果
2019/11/28 jQuery
Angular6项目打包优化的实现方法
2019/12/15 Javascript
十分钟教你上手ES2020新特性
2020/02/12 Javascript
Vue中的nextTick作用和几个简单的使用场景
2021/01/25 Vue.js
用Python从零实现贝叶斯分类器的机器学习的教程
2015/03/31 Python
python决策树之CART分类回归树详解
2017/12/20 Python
解决python写入带有中文的字符到文件错误的问题
2019/01/31 Python
Python2和3字符编码的区别知识点整理
2019/08/08 Python
Python2比较当前图片跟图库哪个图片相似的方法示例
2019/09/28 Python
Django项目基础配置和基本使用过程解析
2019/11/25 Python
python利用google翻译方法实例(翻译字幕文件)
2020/09/21 Python
美国电子元器件分销商:Newark element14
2018/01/13 全球购物
Erwin Müller穆勒家居瑞士官网:您整个家庭的邮购公司
2019/12/28 全球购物
小学英语教学反思
2014/01/30 职场文书
工会主席岗位责任制
2014/02/11 职场文书
2015大学生暑假调查报告
2015/07/13 职场文书
2016国庆促销广告语
2016/01/28 职场文书
导游词之云南省玉龙雪山
2019/12/19 职场文书