当前位置: 首页 > news >正文

webpack5在生产环境屏蔽掉控制台打印 失效处理

常规是使用

const TerserPlugin = require('terser-webpack-plugin')

const terserUglifyPlugin = new TerserPlugin({
  exclude: ['/node_modules/'],
  terserOptions: {
    parse: {},
    compress: {
      warnings: false,
      drop_console: true,
      drop_debugger: true
    },
    output: {
      comments: false,
      beautify: false
    },
    warnings: false
  }
})
const minimizer = process.env.NODE_ENV === 'production' ? [terserUglifyPlugin] : []

module.exports = defineConfig({
  lintOnSave: false,
  transpileDependencies: true,
  devServer: {
    client: {
      overlay: false,
    },
  },
  configureWebpack: {
    plugins: [
    ],
    optimization: {
      minimize: true,
      minimizer: minimizer
    },
    resolve: {
    }
  }
})

但按上面配置,打包部署后,控制台依然存在console

解决方法:

 // 在configureWebpack 同级加上
  chainWebpack: (config) => {
    if (process.env.NODE_ENV === 'production') {
      config.optimization.minimizers.delete('terser'); // 删除默认的 TerserPlugin
    }
  },

相关文章:

  • Nginx 配置前端后端服务
  • 矩阵 trick 系列 题解
  • 【51单片机】快速入门
  • 关于mysql 表中字段存储JSON对象对JSON对象中的bolean字段进行查询的方式
  • 【原创】Ubuntu 24搭建Ollama+ DeepSeek局域网服务器
  • salesforce 为什么无法关闭task,显示:insufficient access rights on object id
  • smolagents学习笔记系列(八)Examples - Master you knowledge base with agentic RAG
  • 第13天:数据序列化实战 - 从内存到磁盘的完美转换
  • 2025 软件供应链安全情报预警平台建设与实践
  • Java中的TreeMap
  • Oracle 数据库基础入门(二):深入理解表的约束
  • DeepSeek 提示词:常见指令类型
  • 内容选题与商业布局
  • 使用Crawlee可破题js渲染采集数据
  • 【Javascript】js精度丢失
  • uni小程序wx.switchTab有时候跳转错误tab问题,解决办法
  • Redis除了做缓存还有哪些应用场景
  • 记一次高并发下导致的数据库死锁解决方案
  • Docker和K8S中pod、services、container的介绍和关系
  • 【3DMAX科研绘图】3DMAX一键生成极小曲面插件Gyroid使用方法
  • 商务部回应美方加严限制中国芯片:敦促美方立即纠正错误做法
  • 有人倒卖试运营门票?上海乐高乐园:这些票存在无法入园风险
  • 习近平会见智利总统博里奇
  • 中拉论坛部长级会议为何悬挂海地和圣卢西亚的国旗?外交部回应
  • 继71路之后,上海中心城区将迎来第二条中运量公交
  • 泽连斯基批准美乌矿产协议