闭包编译器 - 保留未使用的函数,不要重命名未定义的函数
closure compiler - keep unused functions and don't rename the undefined
所以闭包编译器很棒,但导出函数和定义extern似乎需要太多的手动工作。有没有办法告诉编译器它不应该删除任何函数,也不应该重命名任何未定义的函数?
这背后有两个主要原因:
-
如果函数或属性未在 javascript 文档的范围内定义,则它可能是在外部文件中定义的。因此,我不希望重命名这些。
-
如果函数是在给定作用域中定义的,但未在同一作用域内调用,则可能是在某些外部代码中调用的。因此,我想将此功能保留在文件中而不重命名它。
这样,我们可以简单地编译javascript文件,而不必担心外部库和导出从html页面调用的函数。
听起来
你应该以SIMPLE_OPTIMIZATIONS的优化级别运行编译器。不要被这个名字所迷惑,因为它仍然可以完全编译你的代码。主要区别在于SIMPLE_OPTIMIZATION不会重命名或消除全局范围内的死代码。这意味着外部和出口的要求不再存在。
为了避免这种情况,我在完整的脚本上运行闭包编译器,该脚本是应用程序所有脚本的串联。所以这是一个两步过程:
1 - 连接所有
2 - 运行闭包编译器
此外,您可能希望(正如我经常做的那样,由于 v1.8 之前的 jquery 问题)使用 compilationLevel="simple" 运行编译器。
串联非常重要,因为一般来说,缓慢与总大小无关,而主要与请求数量有关。
编辑 :当然,您必须自动化所有这些。如果您使用 ant,我可以为您提供 ant 任务定义。
相关文章:
- 正在使用Dropzone.js删除服务器上已重命名的文件
- Angular重命名模块后未能实例化模块
- 如何使用laravel重命名已存储在服务器中的文件
- 如何使用外部Javascript库(如jQuery)重命名Google闭包样式表
- lodash:重命名对象中的键
- 阻止对的关闭重命名对象键
- 调整屏幕大小后重命名函数
- 可以重命名与其他类上的函数同名的 JS 函数的 IDE
- 使用 PHP 重命名 JavaScript 变量和函数
- 如何重命名本机窗口函数,以便我可以删除两行
- 闭包编译器 - 保留未使用的函数,不要重命名未定义的函数
- 在javascript函数中重命名数组(将数组分配给新名称)
- 如何重命名 javascript 预定义函数
- 函数来重命名Vim中的参数
- 为什么我必须重命名我的javascript文件,以获得我的新函数的工作
- 是否可以重命名“函数”?在JS
- Javascript:检查函数是否存在,重命名并从字符串创建函数
- 为什么在启用下划线的重命名函数中使用apply ?
- 使用JSDoc,我将如何注释已销毁的重命名函数参数
- Jquery-是否可以重命名js函数