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

发布时间 - 2026-01-11 02:09:05    点击率:

前言

最近在用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时候也没有任何问题

                            

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

                            

解决方案: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报警了

总结

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


# webpack  # react  # 压缩  # 打包压缩命令  # React图片压缩上传统一处理方式  # 前端项目vue3/React如何使用pako库解压缩后端返回gzip数据  # 前端 react 实现图片上传前压缩(缩率图)  # 就会  # 多个  # 也没  # 如有  # 给大家  # 做一个  # 一个问题  # 这篇文章  # 自带  # 报错  # 谢谢大家  # 可以防止  # 有任何  # 只要在  # index  # commonsPlugin  # optimize  # ExtractLess  # plugin  # css 


相关栏目: 【 网站优化151355 】 【 网络推广146373 】 【 网络技术251813 】 【 AI营销90571


相关推荐: 英语简历制作免费网站推荐,如何将简历翻译成英文?  HTML5段落标签p和br怎么选_文本排版常用标签对比【解答】  Laravel怎么处理异常_Laravel自定义异常处理与错误页面教程  如何挑选高效建站主机与优质域名?  Win11怎么更改系统语言为中文_Windows11安装语言包并设为显示语言  JavaScript如何实现音频处理_Web Audio API如何工作?  nodejs redis 发布订阅机制封装实现方法及实例代码  Laravel如何实现本地化和多语言支持_Laravel多语言配置与翻译文件管理  Laravel怎么实现搜索高亮功能_Laravel结合Scout与Algolia全文检索【实战】  安克发布新款氮化镓充电宝:体积缩小 30%,支持 200W 输出  b2c电商网站制作流程,b2c水平综合的电商平台?  郑州企业网站制作公司,郑州招聘网站有哪些?  Laravel如何实现多级无限分类_Laravel递归模型关联与树状数据输出【方法】  制作公司内部网站有哪些,内网如何建网站?  网站制作企业,网站的banner和导航栏是指什么?  如何在阿里云高效完成企业建站全流程?  香港服务器网站推广:SEO优化与外贸独立站搭建策略  如何用手机制作网站和网页,手机移动端的网站能制作成中英双语的吗?  非常酷的网站设计制作软件,酷培ai教育官方网站?  Internet Explorer官网直接进入 IE浏览器在线体验版网址  Laravel项目怎么部署到Linux_Laravel Nginx配置详解  如何用西部建站助手快速创建专业网站?  如何快速打造个性化非模板自助建站?  Laravel如何升级到最新的版本_Laravel版本升级流程与兼容性处理  如何用搬瓦工VPS快速搭建个人网站?  简历没回改:利用AI润色让你的文字更专业  如何快速搭建支持数据库操作的智能建站平台?  Laravel模型事件有哪些_Laravel Model Event生命周期详解  西安专业网站制作公司有哪些,陕西省建行官方网站?  php中::能调用final静态方法吗_final修饰静态方法调用规则【解答】  北京网站制作的公司有哪些,北京白云观官方网站?  C语言设计一个闪闪的圣诞树  Laravel如何实现数据库事务?(DB Facade示例)  PHP 实现电台节目表的智能时间匹配与今日/明日轮播逻辑  java ZXing生成二维码及条码实例分享  Laravel怎么实现微信登录_Laravel Socialite第三方登录集成  HTML透明颜色代码在Angular里怎么设置_Angular透明颜色使用指南【详解】  HTML透明颜色代码怎么让图片透明_给img元素加透明色的技巧【方法】  浅谈redis在项目中的应用  如何打造高效商业网站?建站目的决定转化率  Win11关机界面怎么改_Win11自定义关机画面设置【工具】  如何在服务器上三步完成建站并提升流量?  Laravel软删除怎么实现_Laravel Eloquent SoftDeletes功能使用教程  今日头条微视频如何找选题 今日头条微视频找选题技巧【指南】  如何在云主机快速搭建网站站点?  Laravel如何实现图片防盗链功能_Laravel中间件验证Referer来源请求【方案】  Laravel任务队列怎么用_Laravel Queues异步处理任务提升应用性能  高防网站服务器:DDoS防御与BGP线路的AI智能防护方案  如何在腾讯云服务器上快速搭建个人网站?  bing浏览器学术搜索入口_bing学术文献检索地址