これらの依存関係を自動的に検出し、ロード方法を選択できるツールがあれば便利です。ただし、今日の最良のソリューションは少し粗雑です。リストに追加したい特定のニーズに合わせて依存関係マネージャーを作成しました ( Pyramid Dependency Manager )。いくつかのユニークなユースケースを解決するいくつかの重要な機能があります。
- 他のファイルを処理します (ビューの html の挿入を含む...はい、開発中にビューを分離できます)
- リリースの準備ができたら、javascript でファイルを結合します (外部ツールをインストールする必要はありません)。
- すべての html ページの汎用インクルードがあります。依存関係が追加、削除、名前変更などされたときに、1 つのファイルを更新するだけで済みます。
開発中にどのように動作するかを示すサンプルコード。
ファイル: 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>
依存関係を管理するために単一のファイルを維持する必要があります。ヘッダーのインクルードに基づいてローダー ファイルを自動的に生成できるプログラムを作成することを考えていますが、さまざまな種類の依存関係を処理するため、それらを 1 つのファイルに保持する方が実際には良いかもしれません。