0

假设我有一个涉及 fileA 的 JS 应用程序。除了 fileA 之外,在文件夹“js”中还有一个依赖于 fileA 的 fileB。例如:

文件A:

goog.provide('mainProject');
mainProject.something = function(){return "returned";}
mainproject.something();

我的理解(可能不正确)是我可以做到:

文件B:

goog.require('mainProject')
mainProject.anotherFunction = function(){return "returned again";}
mainProject.anotherFunction();

并且该closurebuilder会检测到依赖关系。

我已经以我知道的各种方式运行了closurebuilder,它并没有将这里表示为“fileB”的内容连接起来。但是,它确实包含 fileA。

我的命令是这样的:

python path-to\closurebuilder.py --root=path-to\closure-library --root=path-to\js --namespace="mainProject" --output_mode=script > path-to-js\concatenated.js

我知道我可能在这里遗漏了一个概念......任何建议将不胜感激。

谢谢你。

4

2 回答 2

0

如果您有一个复杂的项目,也许您可​​以使用 caccdeps.py 来更新您的 deps.js 文件。如果您的代码可以在未编译的情况下运行,那么它也应该可以编译。

以下是有关使用 cacldeps.py 的一些信息,也许您可​​以通过将 JavaScript 文件放在正确的目录中来解决问题:WIKI: How to use Lime (how to use closure-compiler with 3rd party (closure) libraries)

于 2013-06-05T06:57:38.553 回答
0

我试图向后使用图书馆。我以为你树了,goog.required 一个“类”,然后实例化、增强等......实际上,你使用 goog.require/provide 创建一个从顶部开始并移动的依赖树沿着你创建的树。这解决了问题。非常感谢所有评论/回答的人。

于 2013-06-21T14:20:37.207 回答