例如,有2个文件:
/modules/Module.js <requires Core.js>
/modules/core/Core.js
目录会进行递归遍历,在
Core.js
之前包含Module.js
,导致出现错误。这只是一个简单的例子,依赖关系可能跨越目录,并且可能存在其他复杂情况。但没有循环依赖关系。我遵循类似于Java包的Javascript结构,每个文件定义一个单独的对象(我使用MooTools,但这并不重要)。每个Javascript文件和依赖关系的结构始终保持一致:
Module.js
var Module = new Class({
Implements: Core,
...
});
Core.js
var Core = new Class({
...
});
在Javascript文件数量巨大且存在文件间依赖关系的项目中,您通常会采取哪些做法来处理依赖关系呢?