相关疑难解决方法(0)

如何使用Google的Closure Compiler将我的javascript分成模块?

我想在我们正在使用的javascript源代码上使用google封闭编译器.在开发模式中,我们倾向于将功能分解为大量文件,但是对于生产而言,它们希望将它们组合到模块中.

在调用编译器时,我可以给它一个要包含的文件列表进行编译,但是它的输出显示编译器没有保存文件列表的顺序.

我搜索了它,发现我可以使用goog.provide/good.require来控制不同js文件之间的依赖关系.问题在于它为我的js添加了我不需要或不想要的代码,例如:

goog.provide("mainFile")
Run Code Online (Sandbox Code Playgroud)

将添加这个:

var mainFile = {};
Run Code Online (Sandbox Code Playgroud)

到编译的js文件,我不想要的东西.我们根本没有使用谷歌闭包库,我想要使用的只是编译器.

有没有办法告诉编译器文件的顺序,而不包括我不需要的更多"闭包库"功能?我当然可以创建一个我自己的工具,它将首先获取所有文件,将它们组合成一个然后将成为编译器输入的文件,但如果它可以由编译器本身完成,我宁愿无效.


编辑

目标是能够像这个线程中的答案一样生成模块:使用Closure Compiler中的--module选项创建多个输出文件

所以我想补充一点,就是能够控制哪些文件进入哪个模块,同时控制他们的订单.现在我不使用通配符,但我计划将来这样做(如果可能的话).

简单地说"cat file1.js file2.js> combined.js && compile ..."很好,但在我们的例子中它有点复杂,我们必须编写一个基于某些逻辑来执行该操作的程序/脚本.如果我们能以某种方式告诉编译器高级文件的顺序,它可能只是节省实现这样一个程序的时间.

谢谢.

javascript minify google-closure-compiler

18
推荐指数
1
解决办法
8189
查看次数