任何JavaScript uglifier / minifier都可以忽略文件的一部分吗?

时间:2015-02-14 06:49:45

标签: javascript minify bundling-and-minification uglifyjs

我想知道任何JavaScript uglifier是否可以排除文件的部分。

就像在这个块中一样,我只想在开发环境中使用它:

// If s is undefined warn the DEV guys they forgot something!
if(s === undefined)
    throw new Error('Invalid i18n key');

我可以通过向条件添加全局变量来停止错误,但是让它用一些元数据排除块会很酷:

/* UGLIFY exclude */
// If s is undefined warn the DEV guys they forgot something!
if(path === undefined)
    throw new Error('Invalid i18n key, on' + current.parser.lineNo);
/* /UGLIFY */*

这有可能吗?

提前致谢!

1 个答案:

答案 0 :(得分:0)

Grunt.js。只需将您不想缩小的部分分解成一个独立文件。合并另一个文件,然后合并该丑文件和该漂亮文件。当然,如果您要使if语句保持漂亮,则该代码的精确位置非常重要(与要提升的函数相比)。因此,也许您需要将脚本分成3个文件,以将漂亮的if夹在中间,但这是可行的。

如果您想要一份简单的Grunt入门指南:https://hightechtele.com/articles/grunt-getting-started

签出Grunt uglify documentation :(这可能也可能不是您想要的)

  

exceptionsFiles类型:数组默认值:[]

     

与mangle.properties一起使用以传递一个或多个JSON文件   包含不应包含的变量和对象属性的列表   被弄坏了。有关文件语法的更多信息,请参见UglifyJS文档。