如何使用Google Closure编译器删除未使用的代码?
我正在使用JQuery Slider控件,但我没有在JQuery中使用任何其他东西。所以我读到高级模式下的Google Closure编译器可以删除未使用的代码,但我不知道如何。
我有 frontpage.html ,它链接到我网站上托管的html网页上的外部JQuery,JQuery UI和JQuery Slider控件。
在我的frontpage.html上,我还在HTML中嵌入了JavaScript,用于启动JQuery Slider控件。
我如何使用online Closure Compiler来评估我的frontpage.html,JQuery,JQuery UI和JQuery Slider,以删除我不使用的所有未使用的JQuery代码?
答案 0 :(得分:5)
有两种方法可以从组合输出脚本中删除/排除未使用的代码:
ADVANCED_OPTIMIZATIONS
编译级别(有关详细说明和用法,请参阅Advanced Compilation and Externs)--manage_closure_dependencies
编译标志在这两个选项中,使用--manage_closure_dependencies
标志删除未使用的代码的次数较少(即在文件级别排除代码),但它确实允许您保持SIMPLE_OPTIMIZATIONS
编译级别。无论哪种情况,您都必须包含网址
jQuery和jQueryUI脚本以及从你的页面使用jQuery Slider的代码 - 这样的东西(第一个选项):
// ==ClosureCompiler==
// @compilation_level ADVANCED_OPTIMIZATIONS
// @output_file_name default.js
// @code_url http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.js
// @code_url http://ajax.googleapis.com/ajax/libs/jqueryui/1.8.0/jquery-ui.js
// ==/ClosureCompiler==
// ADD YOUR CODE HERE
希望这有帮助。
答案 1 :(得分:2)
首先作为初学者,我建议您尝试简单优化。因为它可以在没有任何配置的情况下工作,并且产生效果很好。不要被名字误导。简单优化比其他任何压缩工具都能提供更好的节省。 高级可以是您的下一步,但稍微复杂一点。
至于使用编译器。我的建议是将所有脚本打包到一个javascript文件,上传到您的网站,这样它就会有一个网址,将其传递给在线编辑器。然后,您点击Add
和Compile
即可。
在右侧,您将看到已编译的代码。此外,还将创建一个名为default.js
的文件,您可以下载。
下一步是重命名根据您的需要,然后上传到您的服务器,更改HTML中的.js
引用,您就是这么多完成。玩得开心!
答案 2 :(得分:0)
Closure Compiler的ADVANCED_OPTIMIZATION目前无法拆分jQuery。 jQuery努力最小化自己使用聪明的运行时扩展,各种别名和功能服务不同的目的取决于传递的参数一起工作,使jQuery对编译器不透明。也就是说,适当的Closure Compiler ADVANCED_OPTIMIZATION支持jQuery团队的jQuery 1.8愿望清单。