我正在使用grunt-contrib-uglify作为我的js构建过程,并且非常希望能够从最终构建中排除某些代码部分。
看起来像是这样的东西:
/*BuildExcludeBegin*/
Run this code during development, but don't include it in the minified.js
/*BuildExcludeEnd*/
有没有人知道这是否适用于grunt-contrib-uglify?
答案 0 :(得分:3)
grunt-contrib-uglify 不提供此功能。但你可以使用: https://www.npmjs.com/package/grunt-strip-code
从该页面引用:
<强>咕噜条码强>
grunt-strip-code插件用于从生产版本中删除仅在开发和测试环境中需要的代码段。 grunt-strip-code使用开始和结束注释来标识要删除的代码段。例如:
/* test-code */
removeMeInProduction();
/* end-test-code */
doNotRemoveMe();
此练习的用例是使单元测试可以访问私有JavaScript函数,而不会在生成版本中公开它们。这篇博文详细介绍了概念和实现。
答案 1 :(得分:2)
我认为没有任何功能允许您排除代码片段。您可以将代码拆分为可以单独排除的单独文件吗?并非mangle或mangle.properties适合您?
答案 2 :(得分:1)
这可以通过grunt-contrib-uglify完成,它现在称为有条件的编译,就像...
if (DEBUG) {
console.log("debug stuff");
}