我无法理解使用 google 闭包编译器 API 服务的基本流程。我会问一些问题:
- 我应该在我发送的要编译的文件列表中包含闭包的 base.js 吗?
- deps.js 太大而无法发送。我应该自己包含它,还是编译器服务会使用它自己的副本?
据我了解,编译器的功能之一是它解析“require”语句,并在输出中包含必要的代码。例如,如果我使用他们提供的在线 UI 工具并在输入框中输入以下内容:
goog.require("goog.dom"); goog.dom.getElement("test");
并按“编译”,我希望得到足够的谷歌关闭代码来执行这个片段。相反,我只是得到同样的东西(减去空格)。我不明白什么?
最后,谷歌的编译器服务对你发送的文件有 200k 的大小限制。我使用的是一个名为 Minify 的 PHP 包,它可以让你发送一个文件列表,这些文件一次通过服务发送一个,大概这就是谷歌希望你处理 200k 限制的方式。编译器应该检查,比如说,你的私有变量都没有在任何地方作为公共访问,这似乎意味着它必须了解列表中的所有文件,以确保文件中定义的类档案B中没有违反A。是这种情况吗?服务是否以某种方式记住每个文件的解析,将其保存在内存中,并交叉检查所有内容?还是我的理解还有缺陷?
多谢你们!