vue或react项目生产环境去掉console.log的操作


Posted in Javascript onSeptember 02, 2020

在开发环境写了很多console.log/info/debug,在生产环境需要去掉这些console。

如果手动删除未免也太累了,再说以后想再开发还得重新写console。

事实上webpack提供了删除console的插件,在vue-cli3里面是这样用的:

首先安装terser-webpack-plugin

npm install terser-webpack-plugin -D

然后在vue.config.js文件里写插件的配置:

module.exports = {
 configureWebpack: (config)=>{
 if(process.env.NODE_ENV === 'production'){
  config.optimization.minimizer[0].options.terserOptions.compress.drop_console = true
 }
 }
}

2020.1.14补充:

上面的写法是直接修改webpack的配置,vue官方文档里说也可以返回一个将会被合并的对象,写法如下:

const TerserPlugin = require('terser-webpack-plugin')
module.exports = {
 configureWebpack: (config)=>{
 if(process.env.NODE_ENV === 'production'){
  // 返回一个将会被合并的对象
  return {
  optimization:{
  minimizer: [
 new TerserPlugin({
 sourceMap:false,
 terserOptions:{
  compress:{
  drop_console : true
  }
 }
 })
   ]
 }
 }
 }
 }
}

2020.4.22补充:

最近在做react项目的时候发现它的webpack的配置,也可以使用terser去掉console.log。

webpack.config.prod.js:

module.exports = {
 optimization:{
 minimizer: [
 new TerserPlugin({
  sourceMap:false,
 terserOptions:{
 compress:{
  drop_console : true
 }
 }
 })
 ]
 }
}

补充知识:vue中遇到数据更新但是页面没有更新的情况

今天在项目中遇到了一个需求,点击改变数据,之后在页面上立即看到更改后的数据。

vue或react项目生产环境去掉console.log的操作

首先,如上图的黄色按钮是通过v-for 循环产生的,data()里只有数据cards:[ … ],cards的值是通过调用后台接口拿到的。

data(){
 return {
 cards:[]
 }
}
<div v-for="card in cards" :key="card.id">
 <img src="xxx" />
 <div v-if="card.isShow" @click="cacelHandler(card)">
 <img src="xxxx" />
 </div>
</div>

这个头像下方的黄色按钮,是根据card.isShow的truthy 决定显示或不显示。

当我点击按钮的时候,把card.isShow 的值变为 false。

可是页面上的黄色按钮还在,并没有如我期望的那样消失。

通过查询资料得知,使用this.$forceUpdate()可以重新渲染组件,这样就可以得到想要的效果。

cacelHandler(card){
 card.isShow = false;
 this.$forceUpdate();
}

vue官方对$forceUpdate的解释是:

$forceUpdate可以迫使 Vue 实例重新渲染。它仅仅影响实例本身和插入插槽内容的子组件,而不是所有子组件。

以上这篇vue或react项目生产环境去掉console.log的操作就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
实用javaScript技术-屏蔽类
Aug 15 Javascript
ECMAScript 基础知识
Jun 29 Javascript
Js保留小数点的4种效果实现代码分享
Apr 12 Javascript
Node.js实现简单聊天服务器
Jun 20 Javascript
轻松学习jQuery插件EasyUI EasyUI表单验证
Dec 01 Javascript
JS数字千分位格式化实现方法总结
Dec 16 Javascript
正则中的回溯定义与用法分析【JS与java实现】
Dec 27 Javascript
Javascript 高性能之递归,迭代,查表法详解及实例
Jan 08 Javascript
浅谈原型对象的常用开发模式
Jul 22 Javascript
详解vuex中action何时完成以及如何正确调用dispatch的思考
Jan 21 Javascript
Node如何后台数据库使用增删改查功能
Nov 21 Javascript
JavaScript实现音乐播放器
Aug 14 Javascript
JS继承实现方法及优缺点详解
Sep 02 #Javascript
vue-cli3访问public文件夹静态资源报错的解决方式
Sep 02 #Javascript
vue打包静态资源后显示空白及static文件路径报错的解决
Sep 02 #Javascript
关于vue-cli3打包代码后白屏的解决方案
Sep 02 #Javascript
JavaScript事件循环及宏任务微任务原理解析
Sep 02 #Javascript
vue cli 3.0通用打包配置代码,不分一二级目录
Sep 02 #Javascript
Vue-cli打包后如何本地查看的操作
Sep 02 #Javascript
You might like
PHP中使用TCPDF生成PDF文档实例
2014/07/01 PHP
php查看当前Session的ID实例
2015/03/16 PHP
php中str_pad()函数用法分析
2017/03/28 PHP
Yii2.0使用阿里云OSS的SDK上传图片、下载、删除图片示例
2017/09/20 PHP
laravel实现批量更新多条记录的方法示例
2017/10/22 PHP
laravel中的fillable和guarded属性详解
2019/10/23 PHP
使用js实现数据格式化
2014/12/03 Javascript
jquery实现在光标位置插入内容的方法
2015/02/05 Javascript
javascript如何操作HTML下拉列表标签
2015/08/20 Javascript
浅析JavaScript访问对象属性和方法及区别
2015/11/16 Javascript
ECHO.js 纯javascript轻量级延迟加载的实例代码
2016/05/24 Javascript
深入理解js数组的sort排序
2016/05/28 Javascript
jquery checkbox的相关操作总结
2016/10/17 Javascript
微信小程序websocket实现聊天功能
2020/03/30 Javascript
angular5 子组件监听父组件传入值的变化方法
2018/09/30 Javascript
JS/HTML5游戏常用算法之碰撞检测 包围盒检测算法详解【矩形情况】
2018/12/13 Javascript
如何使用CSS3和JQuery easing 插件制作绚丽菜单
2019/06/18 jQuery
JS把字符串格式的时间转换成几秒前、几分钟前、几小时前、几天前等格式
2019/07/10 Javascript
Nodejs文件上传、监听上传进度的代码
2020/03/27 NodeJs
微信小程序开发(二):页面跳转并传参操作示例
2020/06/01 Javascript
[09:23]国际邀请赛采访专栏:iG战队VK,Tongfu战队Cu
2013/08/05 DOTA
Python中多线程的创建及基本调用方法
2016/07/08 Python
Python3爬虫学习之将爬取的信息保存到本地的方法详解
2018/12/12 Python
对Python Class之间函数的调用关系详解
2019/01/23 Python
Python脚本按照当前日期创建多级目录
2019/03/01 Python
Tensorflow: 从checkpoint文件中读取tensor方式
2020/02/10 Python
什么是Python包的循环导入
2020/09/08 Python
浅谈HTML5新增和废弃的标签
2019/04/28 HTML / CSS
屈臣氏官方旗舰店:亚洲享负盛名的保健及美妆零售商
2019/03/15 全球购物
法国包包和行李箱销售网站:Bagage24.fr
2020/03/24 全球购物
高中毕业生生活的自我评价
2013/12/08 职场文书
网站客服岗位职责
2014/04/05 职场文书
党员志愿者活动总结
2014/06/26 职场文书
乡镇精神文明建设汇报材料
2014/08/15 职场文书
党员承诺书格式范文
2015/04/28 职场文书
党小组考察意见
2015/06/02 职场文书