Управление общими зависимостями JavaScript в Symfony 2 - PullRequest
17 голосов
/ 03 июня 2011

Я хотел бы знать, какова стандартная лучшая практика для работы с общими зависимостями JavaScript (и даже CSS) между несколькими пакетами Symfony 2.

Согласно Книге на официальном сайте Symfony :

A bundle should not embed third-party libraries written in JavaScript, CSS, or any other language.

Это кажется логичным, но нет рекомендаций относительно того, как на самом деле объявлять или требовать общих зависимостей активов, таких как jQuery, или, что более важно, Отдельные плагины для jQuery.Я выделил отдельные плагины, потому что просто включение хорошо известного, почти всегда используемого JS-фреймворка в макет приложения было бы «вроде нормально», но плагин необходим на тот случай, если он будет использоваться.

Поэтому, если мне не нужно помещать его в каталог ресурсов моего комплекта, то у меня следующие вопросы:

  • , куда поместить сторонний код
  • как мне ссылаться на него
  • как другие пакеты должны ссылаться на тот же плагин (предпочтительно тот же физический файл)
  • какчтобы не требовать одни и те же активы более одного раза

Не зная каких-либо методов для решения этой проблемы, я подумал о том, чтобы добавить инструкции в документацию моего пакета, чтобы включить необходимые библиотеки в файл макета, но должны быть более чистые решения.

Есть мысли по этому поводу?

1 Ответ

14 голосов
/ 03 июня 2011

Сторонний плагин, который использует Assetic и полагается на вас для установки зависимости, должен сделать это, требуя, чтобы у вас был актив (например) с именем jquery в вашем менеджере активов. Разработчик приложения должен предоставить этот ресурс в config.yml.

Имеет ли это смысл?

...