如果有一个工具可以自动为您检测这些依赖项并选择它们的加载方式,那就太好了。不过,今天最好的解决方案有点粗糙。我为我想要添加到列表中的特定需求创建了一个依赖管理器(金字塔依赖管理器)。它具有一些关键功能,可以解决一些独特的用例。
- 处理其他文件(包括为视图插入 html...是的,您可以在开发过程中分离视图)
- 当您准备好发布时,在 javascript 中为您组合文件(无需安装外部工具)
- 对所有 html 页面都有一个通用的包含。当依赖项被添加、删除、重命名等时,您只需更新一个文件
一些示例代码来展示它在开发过程中是如何工作的。
文件:dependencyLoader.js
//Set up file dependencies
Pyramid.newDependency({
name: 'standard',
files: [
'standardResources/jquery.1.6.1.min.js'
]
});
Pyramid.newDependency({
name:'lookAndFeel',
files: [
'styles.css',
'customStyles.css',
'applyStyles.js'
]
});
Pyramid.newDependency({
name:'main',
files: [
'createNamespace.js',
'views/buttonView.view', //contains just html code for a jquery.tmpl template
'models/person.js',
'init.js'
],
dependencies: ['standard','lookAndFeel']
});
html 文件
<head>
<script src="standardResources/pyramid-1.0.1.js"></script>
<script src="dependencyLoader.js"></script>
<script type="text/javascript">
Pyramid.load('main');
</script>
</head>
它确实需要您维护一个文件来管理依赖项。我正在考虑创建一个程序,该程序可以根据头文件中的包含自动为您生成加载程序文件,但由于它处理许多不同类型的依赖项,因此将它们维护在一个文件中实际上可能会更好。