サーバー側で依存関係を管理するための優れたソリューションはありますが、一貫したクライアント側の JavaScript 依存関係管理ワークフローを持つという私のすべてのニーズを満たすソリューションは見つかりませんでした。次の 5 つの要件を満たしたいと考えています。
- クライアント側の依存関係を npm のpackage.jsonやbowerのような形式で管理します
bower.json
- あまり知られていないライブラリのファイルで、git リポジトリまたは実際の js ファイル (Web またはローカルのいずれか) を指す柔軟性が必要です
dependency.json
(npm を使用すると、git リポジトリを指すことができます)。 - すべてのライブラリを ender のような 1 つのファイルに縮小して名前空間を
<script>
付ける必要があります。これは、クライアント側のタグに入れる必要がある唯一の js ファイルです。 - BoxJS 4のような CoffeeScript をすぐにサポートする必要があります(現在は廃止されています) 。
ブラウザーでは、 requireスタイルのいずれかを使用できるはずです。
var $ = require('jquery'); var _ = require('underscore');
またはさらに良いことに、headjsスタイルを実行します。
head.js(['jquery', 'underscore', 'mylib'], function($, _, mylib) { // executed when all libraries are loaded });
そのような単一のツールが存在しない場合、ツールの最適な組み合わせ、つまりvolo (またはgrunt ) などを使用して組み合わせることができるツールチェーンは何ですか?
ここでリンクしているすべてのツールを既に調査しましたが、個別にせいぜい 3 つの要件しか満たしていません。したがって、これらのツールについて再度投稿しないでください。私の5つの要件すべてを満たす単一のツールを提供する回答、または私の要件もすべて満たす複数のそのようなツールのツールチェーンの具体的なワークフロー/スクリプト/作業例を誰かが投稿した場合にのみ、回答を受け入れます。ありがとうございました。