使用ng build --prod剥离所有注释和console.log可能吗?

时间:2017-02-17 21:02:08

标签: angular angular-cli

我正在使用MEAN,Angular 2,Node / Express,Angular-CLI和ng build --prod来构建我的应用程序,我对我的应用程序中的一次性注释代码和十亿次调试console.log语句进行了讽刺。有没有办法让构建过程在构建时删除所有注释和console.log语句?手动操作的想法很吓人!

3 个答案:

答案 0 :(得分:26)

我有简单的解决方法。将此代码放在main.ts

if(env === 'prod') { // assuming you have env variable configured
  // check if window exists, if you render backend window will not be available 
  if(window){
      window.console.log = function(){};
   }
}  

答案 1 :(得分:12)

只需将此window.console.log = function(){};添加到“

即可
if (environment.production) {
    enableProdMode();
}`

答案 2 :(得分:5)

您可以在tslint配置文件中使用ng lint --fix标志和no-console规则。并将其挂钩到您的包文件中的构建调用。

例如: ... "prebuild": "ng lint --fix", "build": "ng build -prod", ...

并构建应用

npm run build

参考:https://github.com/angular/angular-cli/wiki/lint