JqueryBundle для Symfony2

Этот бандл позволяет добавить jQuery в свой проект на Symfony2.

Также учтена возможность работы локально (без подключения к сети) или при возможных проблемах с Google CDN.

GitHub

Документация

Для использования бандла можно указать параметр 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.

Jquery и Google Hosted Libraries

Теги: Jquerybundle, Jquery, Symfony2, Google hosted libraries, Cdn


Похожие статьи

SimpleTaskFSMBundle для Symfony2

RobotsTxtBundle для Symfony2

MaterializeBundle для Symfony2

SimplePaginationBundle для Symfony2

HTML5VertiTemplateBundle для Symfony2

TwitterBootstrapBundle для Symfony2

HTML5CacheBundle для Symfony2

GtmBundle (Google Tag Manager) для Symfony2

SitemapXmlBundle для Symfony2