解决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 相关文章推荐
jQuery插件实现屏蔽单个元素使用户无法点击
Apr 12 Javascript
JS实现遮罩层效果的简单实例
Nov 12 Javascript
JS+CSS实现下拉列表框美化效果(3款)
Aug 15 Javascript
jquery实现简易的移动端验证表单
Nov 08 Javascript
Kindeditor在线文本编辑器如何过滤HTML
Apr 14 Javascript
AngularJS基础 ng-hide 指令用法及示例代码
Aug 01 Javascript
纯jQuery实现前端分页功能
Mar 23 jQuery
Vue的MVVM实现方法
Aug 16 Javascript
基于Vue渲染与插件的加载顺序的问题详解
Mar 05 Javascript
使用react实现手机号的数据同步显示功能的示例代码
Apr 03 Javascript
JS实现的点击按钮图片上下滚动效果示例
Jan 28 Javascript
详解vite+ts快速搭建vue3项目以及介绍相关特性
Feb 25 Vue.js
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 curl模拟浏览器采集阿里巴巴的实现代码
2011/04/20 PHP
10个实用的PHP代码片段
2011/09/02 PHP
ZF框架实现发送邮件的方法
2015/12/03 PHP
Laravel 5.3 学习笔记之 配置
2016/08/28 PHP
解决Yii2邮件发送结果返回成功,但接收不到邮件的问题
2017/05/23 PHP
得到文本框选中的文字,动态插入文字的js代码
2007/03/07 Javascript
jQuery技巧大放送 学习jquery的朋友可以看下
2009/10/14 Javascript
让input框实现类似百度的搜索提示(基于jquery事件监听)
2014/01/31 Javascript
javascript 获取HTML DOM父、子、临近节点
2014/06/16 Javascript
深入浅析JavaScript中prototype和proto的关系
2015/11/15 Javascript
Javascript中document.referrer隐藏来源的方法
2017/01/16 Javascript
nodejs基础应用
2017/02/03 NodeJs
微信小程序左滑删除效果的实现代码
2017/02/20 Javascript
Angular6 用户自定义标签开发的实现方法
2019/01/08 Javascript
深入了解响应式React Native Echarts组件
2019/05/29 Javascript
python概率计算器实例分析
2015/03/25 Python
详解Python的Django框架中的templates设置
2015/05/11 Python
浅谈function(函数)中的动态参数
2017/04/30 Python
python文件特定行插入和替换实例详解
2017/07/12 Python
Python使用PIL模块生成随机验证码
2017/11/21 Python
numpy排序与集合运算用法示例
2017/12/15 Python
查看django执行的sql语句及消耗时间的两种方法
2018/05/29 Python
python 获取等间隔的数组实例
2019/07/04 Python
python如何从文件读取数据及解析
2019/09/19 Python
Python迷宫生成和迷宫破解算法实例
2019/12/24 Python
完美解决pycharm导入自己写的py文件爆红问题
2020/02/12 Python
大专生自我评价
2014/01/28 职场文书
生产文员岗位职责
2014/04/05 职场文书
新闻发布会活动策划方案
2014/09/15 职场文书
治理商业贿赂工作总结
2015/08/10 职场文书
2016读书月活动心得体会
2016/01/14 职场文书
PHP策略模式写法
2021/04/01 PHP
Django实现聊天机器人
2021/05/31 Python
Node实现搜索框进行模糊查询
2021/06/28 Javascript
Pandas数据类型之category的用法
2021/06/28 Python
阿里云 Windows server 2019 配置FTP
2022/04/28 Servers