Uglify JS-仅删除console.log

时间:2018-10-15 10:56:01

标签: javascript webpack uglifyjs

在webpack插件的用例中,我对Uglify JS模块有疑问。

我的代码库在代码周围有几个console.log语句,以供本地调试之用,它只会在开发模式下打印出来,但它们仍在代码库中占用空间,我在生产版本中没有这些内容但是,我想保持console.errorconsole.warn不变。

我知道Uglify JS具有密钥drop_console标志,但这会杀死那里的每个控制台输出,我仍然希望控制台中出现警告和错误。

这个问题的原因是我有一个自定义的错误处理程序,而不是将错误发送给Sentry,并且我想在发生错误时在控制台中读取错误,因此我使用错误和警告控制台输出。

1 个答案:

答案 0 :(得分:3)

来自docs

  

drop_console(默认值:false)-传递true放弃对console.*函数的调用。 如果您希望删除特定的函数调用(例如{{1})和/或在删除函数调用后保留函数参数的副作用,请改用console.info

     

...

     

pure_funcs(默认值:pure_funcs)-[...]您可以传递null使其知道此函数不会产生任何副作用。 整个声明将被丢弃

因此,您要寻找的选项是pure_funcs: [ 'Math.floor' ]

相关问题