Этот бандл позволяет добавить jQuery в свой проект на Symfony2.
Также учтена возможность работы локально (без подключения к сети) или при возможных проблемах с Google CDN.
Документация
Для использования бандла можно указать параметр local (путь к локальной версии juqery), например:
jquery: local: '@AppBundle/Resources/public/js/jquery-1.11.3.min.js'
Этот файл будет использоваться, если будут проблемы с сетью (локальная разработка) или при наличии проблем с Google CDN.
По умолчанию '@JqueryBundle/Resources/public/js/jquery-1.11.3.min.js'
Также можно изменить версию jquery, используемую из Google CDN:
jquery: version: 1.11.3
Параметр html5 устаналивает дополнительный атрибут 'type="text/javascript"', необходимый для отображения в старых браузерах:
jquery: html5: false
По умолчанию html5: true
Параметр async позволяет загружать скрипт в новых браузерах асинхронно. Нужно использовать осторожно, т.к. скрипт jquery может быть загружен после загрузки других скриптов, которым необходим jquery, что вызовет ошибки JS.
jquery: async: true
По умолчанию async: false
Параметр cdn позволяет указывать локальную версию CDN:
jquery: cdn: cdn.site.com
По умолчанию cdn не используется
Установка через Composer - менеджер php пакетов
$ composer require evheniy/jquery-bundle "1.*"
Или добавить в composer.json:
"evheniy/jquery-bundle": "1.*"
AppKernel:
public function registerBundles() { $bundles = array( ... new Evheniy\JqueryBundle\JqueryBundle(), ); ...
config.yml:
#JqueryBundle jquery: ~
Или со всеми параметрами:
#JqueryBundle jquery: version: 1.11.3 local: '@AppBundle/Resources/public/js/jquery-1.11.3.min.js' html5: true async: false cdn: cdn.site.com
И Assetic Configuration в config.yml:
#Assetic Configuration assetic: bundles: [ JqueryBundle ]
Добавте эту строку в основной шаблон:
{% include "JqueryBundle:Jquery:jquery.html.twig" %}
Последний шаг:
app/console assetic:dump --env=prod --no-debug
Лицензия
Этот бандл использует лицензию MIT.