vue cli 关闭日志输出

在web.config.js中设置

configureWebpack: (config) => {
    if (process.env.NODE_ENV === "production") {
      // 生产环境下 禁止日志输出,删除注释
      // 2022-02-12 11:27
      // config.optimization.minimizer('terser'); 这样会提示报错
      // 虽然使用npx vue-cli-service inspect --mode production查看配置文件中有这么一句注释,但是没啥用处
      // vue inspect --mode production
      // 注意 config.optimization.minimizer 是一个数组
      // 我们这里使用map遍历数组
      // 这里只有一个插件 TerserPlugin 所以这里我们遍历处理没有错误
      // 但是如果这里在配置了其他插件 比如css的提取插件
      // 所以这里我们修改TerserPlugin 配置信息时需要判断一下是否是TerserPlugin 再去
      config.optimization.minimizer.map((arg) => {
        // 这里我们可以使用arg.constructor.name === 'TerserPlugin' 判断一下
        // 也可以判断 arg.options.terserOptions 是否存在
        // console.log(arg.constructor.name === 'TerserPlugin');
        // console.log(arg.options.terserOptions);
        if(arg.options.terserOptions) {
          const terserOptions = arg.options.terserOptions;
          terserOptions.format = {
            comments: false
          };
          terserOptions.compress = {
            properties: false,
            warnings: false,
            drop_console: true,
            drop_debugger: true,
            pure_funcs: ['console.log']
          };
        }
        return arg;
      });
    }
  }

  

config.optimization.minimizer('terser')  这样使用的话会出错 TypeError: config.optimization.minimizer is not a function