Javascript 闭包编译器-使用jQuery和闭包对源代码进行混合编译
我正在将一个项目从jQuery迁移到Close。我想编译一些只迁移了一半的代码。未编译的源代码工作正常。我想知道什么compile命令可以使用简单的优化来编译它 基于jQuery的原始代码的编译命令如下:Javascript 闭包编译器-使用jQuery和闭包对源代码进行混合编译,javascript,jquery,google-closure-compiler,google-closure,Javascript,Jquery,Google Closure Compiler,Google Closure,我正在将一个项目从jQuery迁移到Close。我想编译一些只迁移了一半的代码。未编译的源代码工作正常。我想知道什么compile命令可以使用简单的优化来编译它 基于jQuery的原始代码的编译命令如下: java -jar ~/closure/closure-compiler/build/compiler.jar \ --js ~/Sites/mysite/js/bc_school6_2.js \ --js ~/Sites/js_common/bc.job_school.js \
java -jar ~/closure/closure-compiler/build/compiler.jar \
--js ~/Sites/mysite/js/bc_school6_2.js \
--js ~/Sites/js_common/bc.job_school.js \
--js ~/Sites/js_common/bc_help.js \
--js ~/Sites/js_common/validation.js \
--js ~/Sites/js_common/md5.js \
--js ~/Sites/js_common/chosen.jquery.js \
--js ~/Sites/js_common/jquery.reveal.js \
--js ~/Sites/js_common/printArea.js
> ~/Sites/mysite/js-minified/bc_school6_2s.js
完全迁移时,源代码的简单\u优化编译命令如下(尽管完全迁移的代码将使用高级\u优化):
目前,名称空间没有在源代码中正确设置,因此后一个编译过程无法正常工作
是否可以使用googleclosure库编译源代码,然后从js_common
文件夹中添加所有jQuery文件?我可以在一个compile命令中完成吗?如果不是,我可以编译我的goog
代码,然后合并jQuery材料吗
谢谢。您可以编译
goog
代码,然后将jQuery代码作为外部代码包含进来。此方法还允许您在高级模式下编译代码
,并且仍然能够以原始形式使用jQuery
为此,您必须使用包含所有外部声明的.js文件。然后使用--externs
标志告诉闭包编译器在哪里查找externs。请参见下面的示例用法:
java -jar compiler.jar --compilation_level ADVANCED_OPTIMIZATIONS \
--js makeallnotes.js --externs extern1.js --externs extern2.js
要了解有关如何声明外部对象的更多信息,请参见此。基本上,它们用于告诉闭包编译器您正在使用的外部API或库
实际上,googleclosure源代码中包含了一个jQuery
extern文件。查找您正在使用的jQuery
版本
另一方面,我会考虑使用来构建您的闭包项目。它允许您使用配置文件来设置所有构建参数,并且如果您经常构建代码,将节省大量时间
java -jar compiler.jar --compilation_level ADVANCED_OPTIMIZATIONS \
--js makeallnotes.js --externs extern1.js --externs extern2.js