Несмотря на то, что существуют большие решения для управления зависимостями на стороне сервера, я не смог найти ни одного, удовлетворяющего всем моим потребностям, чтобы иметь согласованный рабочий процесс управления зависимостями JavaScript на стороне клиента. Я хочу удовлетворить эти 5 требований:
- Управление зависимостями моей клиентской стороны в формате, подобном npm package.json или bower
bower.json
- Он должен иметь возможность указывать на git repo или фактические js файлы (в Интернете или локально) в моем
dependency.json
файле для менее известных библиотек (npm позволяет указать на git repos) - Он должен минимизировать и пропущать все библиотеки в один файл, например ender - единственный файл js, который мне нужно будет вставить в мой тег
<script>
на стороне клиента - У него должна быть встроенная поддержка для CoffeeScript, например BoxJS 4 (теперь она мертва)
-
В браузере я должен использовать require стиль:
var $ = require('jquery'); var _ = require('underscore');
Или еще лучше, headjs style:
head.js(['jquery', 'underscore', 'mylib'], function($, _, mylib) { // executed when all libraries are loaded });
Если нет такого единственного инструмента, какая лучшая комбинация инструментов, то есть цепочка инструментов, которую я могу комбинировать, используя что-то вроде volo (или grunt)?
Я уже изучил все инструменты, с которыми я связан здесь, и они удовлетворяют только до 3 моих требований в лучшем случае индивидуально. Поэтому, пожалуйста, не публикуйте снова об этих инструментах. Я бы принял только ответ, который предоставляет один инструмент, который удовлетворяет всем пяти моим требованиям или если кто-то разместит конкретный рабочий процесс/ script/рабочий пример инструментальной цепочки из множества таких инструментов, который также удовлетворяет всем моим требованиям. Спасибо.