解决webpack -p压缩打包react报语法错误的方法


Posted in Javascript onJuly 03, 2017

前言

最近在用webpack打包react代码的时候发现一个问题,做一个处理总结分享出来给大家,下面来一起看看详细的介绍:

我的webpack配置:

var webpack = require('webpack');
//打包less插件
var ExtractTextPlugin = require('extract-text-webpack-plugin');
//这里的'./css/bundle.css'设置打包地址
var ExtractLess = new ExtractTextPlugin('./css/bundle.css');
//打包多个文件插件
//var commonsPlugin = new webpack.optimize.CommonsChunkPlugin('common.js');
var path = require('path');
module.exports = {
 entry:[
  './reactDom/index.js'
 ],
 output:{
  path:'./build',
  filename:'indexReact.js'
 },
 module:{
  loaders:[
   {test: /\.js$/, exclude: /(node_modules|bower_components)/, loader: 'babel',query:{presets:['es2015','react']}},
   {test:/\.less$/,loader:ExtractTextPlugin.extract("style-loader", "css-loader!less-loader")},
   //图片文件使用 url-loader 来处理,小于8kb的直接转为base64
   { test: /\.(png|jpg)$/, loader: 'url-loader?q=8192'}

  ]
 },
 resolve:{
  extensions:['','.js']
  },

 plugins:[
  ExtractLess,
  
 ]
};

上面看上去一切正常,运行webpack -w时候也没有任何问题

解决webpack -p压缩打包react报语法错误的方法                            

但是如果我使用-p压缩的话就会报错:

解决webpack -p压缩打包react报语法错误的方法                            

解决方案:UglifyJsPlugin插件

在webpack包里面已经自带这个UglifyJsPlugin,我们只要在webpack中的plugins添加即可,代码如下

plugins:[
  new webpack.optimize.UglifyJsPlugin({
   compress:{
    warnings:false
   },
   mangle:{
    except:['$super','$','exports','require']
   }
  })
 ]

UglifyJsPlugin可以防止$super, $, exports , require,不会被混淆,设置warnings:false就打包时候即可消除warings报警了

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如有疑问大家可以留言交流,谢谢大家对三水点靠木的支持。

Javascript 相关文章推荐
取键盘键位ASCII码的网页
Jul 30 Javascript
推荐自用 Javascript 缩图函数 (onDOMLoaded)……
Oct 23 Javascript
JavaScript与Div对层定位和移动获得坐标的实现代码
Sep 08 Javascript
jquery form 隐藏的input 选择
Apr 29 Javascript
js如何实现点击标签文字,文字在文本框出现
Aug 05 Javascript
jQuery进行组件开发完整实例
Dec 15 Javascript
javascript拖拽应用实例
Mar 25 Javascript
jQuery图片轮播功能实例代码
Jan 29 Javascript
javascript实现的图片预览功能
Mar 25 Javascript
使用 Vue.js 仿百度搜索框的实例代码
May 09 Javascript
详解使用React进行组件库开发
Feb 06 Javascript
微信用户访问小程序的登录过程详解
Sep 20 Javascript
JS 学习总结之正则表达式的懒惰性和贪婪性
Jul 03 #Javascript
JavaScript之DOM插入更新删除_动力节点Java学院整理
Jul 03 #Javascript
微信小程序开发中的疑问解答汇总
Jul 03 #Javascript
JavaScript之promise_动力节点Java学院整理
Jul 03 #Javascript
JavaScript之DOM_动力节点Java学院整理
Jul 03 #Javascript
javaScript中封装的各种写法示例(推荐)
Jul 03 #Javascript
JavaScript之class继承_动力节点Java学院整理
Jul 03 #Javascript
You might like
PHP读取XML值的代码(推荐)
2011/01/01 PHP
dhtmlxTree目录树增加右键菜单以及拖拽排序的实现方法
2013/04/26 PHP
php实现的获取网站备案信息查询代码(360)
2013/09/23 PHP
在Windows XP下安装Apache+MySQL+PHP环境
2015/02/22 PHP
浅谈PHP值mysql操作类
2016/06/29 PHP
php实现支持中文的文件下载功能示例
2017/08/30 PHP
用ADODB.Stream转换
2007/01/22 Javascript
jQuery 处理网页内容的实现代码
2010/02/15 Javascript
自用js开发框架小成 学习js的朋友可以看看
2010/11/16 Javascript
JS中批量给元素绑定事件过程中的相关问题使用闭包解决
2013/04/15 Javascript
javascript跟随滚动效果插件代码(javascript Follow Plugin)
2013/08/03 Javascript
JS组件Bootstrap Select2使用方法详解
2020/04/17 Javascript
js时间比较 js计算时间差的简单实现方法
2016/08/26 Javascript
javascript将list转换成树状结构的实例
2017/09/08 Javascript
jquery鼠标悬停导航下划线滑出效果
2017/09/29 jQuery
关于vue-router的那些事儿
2018/05/23 Javascript
Vue下路由History模式打包后页面空白的解决方法
2018/06/29 Javascript
浅谈vue方法内的方法使用this的问题
2018/09/15 Javascript
基于JS实现前端压缩上传图片的实例代码
2019/05/14 Javascript
使用VUE实现在table中文字信息超过5个隐藏鼠标移到时弹窗显示全部
2019/09/16 Javascript
vue.js的状态管理vuex中store的使用详解
2019/11/08 Javascript
王纯业的Python学习笔记 下载
2007/02/10 Python
python实现批量修改图片格式和尺寸
2018/06/07 Python
pandas 条件搜索返回列表的方法
2018/10/30 Python
python笔记_将循环内容在一行输出的方法
2019/08/08 Python
python Jupyter运行时间实例过程解析
2019/12/13 Python
css3利用transform变形结合事件完成扇形导航
2020/10/26 HTML / CSS
HTML5新增元素如何兼容旧浏览器有哪些方法
2014/05/09 HTML / CSS
秋季运动会加油稿200字
2014/01/11 职场文书
银行简历自我评价
2014/02/11 职场文书
警察先进个人事迹材料
2014/05/16 职场文书
银行业务授权委托书
2014/10/10 职场文书
运动会200米广播稿
2015/08/19 职场文书
Python&Matlab实现灰狼优化算法的示例代码
2022/03/21 Python
python内置模块之上下文管理contextlib
2022/06/14 Python
Python+SeaTable实现计算两个日期间的工作日天数
2022/07/07 Python