【问题标题】:Can any JavaScript uglifier/minifier ignore part of a file?任何 JavaScript uglifier/minifier 都可以忽略文件的一部分吗?
【发布时间】:2015-02-14 06:49:45
【问题描述】:

我想知道是否有任何 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 */*

他们中的任何一个都可以做到这一点吗?

提前致谢!

【问题讨论】:

    标签: javascript minify bundling-and-minification uglifyjs


    【解决方案1】:

    Grunt.js。只需将您不想缩小的部分分解为独立文件即可。丑化另一个文件,然后连接丑陋的文件和漂亮的文件。当然,如果您要保持 if 语句漂亮,那么该代码的精确位置很重要(相对于被提升的函数)。所以,也许你需要把你的脚本分成 3 个文件,把漂亮的if 夹在中间,但这是可行的。

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

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

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

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

    【讨论】:

      猜你喜欢
      • 2011-12-02
      • 2020-02-02
      • 2019-05-15
      • 2023-03-08
      • 2011-01-16
      • 2016-11-10
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多