vue 在发布阶段移除所有的console.log()输出语句

第一种方法

  1. 下载插件
npm install babel-plugin-transform-remove-console --save-dev
  1. 修改bable.config.js
module.exports = {
  presets: [
    '@vue/cli-plugin-babel/preset'
  ],
  'env': {
    'development': {
      'plugins': ['dynamic-import-node']
    },
    // 增加以下配置编译时可以去掉console.log等
    'production': {
      'plugins': [
        [
          'transform-remove-console',
          {
            // 排除项
            'exclude': ['error', 'warn']
          }
        ]
      ]
    }
  }
}

第二种方法

vue-element-admin 打包后去除console

  1. 下载插件
npm install terser-webpack-plugin --save-dev
  1. 在vue.config.js中加入以下代码
module.exports = {
  publicPath: '/',         
  outputDir: 'dist',
  assetsDir: 'static',
  // lintOnSave: process.env.NODE_ENV === 'development',
  lintOnSave: false,
  productionSourceMap: false,
  configureWebpack: {
    name: name,
    resolve: {
      alias: {
        '@': resolve('src')
      }
    }
  },
  // 移除console.log
  configureWebpack: config => {
    if (process.env.NODE_ENV === 'production') {
      config.optimization.minimizer[0].options.terserOptions.compress.warnings = false
      config.optimization.minimizer[0].options.terserOptions.compress.drop_console = true
      config.optimization.minimizer[0].options.terserOptions.compress.drop_debugger = true
      config.optimization.minimizer[0].options.terserOptions.compress.pure_funcs = ['console.log']
    }
  },