Как переопределить jquery только на одной странице Yii2?

Рейтинг: 2Ответов: 1Опубликовано: 04.02.2015

Здравствуйте.

У меня есть два AssetBundle. Первый - родительский, используется в общем лэйауте (main.php) для подключения одних и тех же ассетов на всех страницах:

class AppAsset extends AssetBundle
{
   public $basePath = '@webroot';
   public $baseUrl = '@web';
   public $css = [
        'css/style.css',
    ];
   public $depends = [
        'yii\web\JqueryAsset',
        'yii\bootstrap\BootstrapAsset',
    ];
}

Второй - дочерний, используется для страницы фотогаллереи, там нужно задействовать свои ассеты, помимо основных, и самое главное поменять jquery на версию ниже. Я подключаю его во вьюшке, в которой выводится содержимое страницы фотогаллереи. Сам bundle:

class GalleryAsset extends AssetBundle
{
    public $basePath = '@webroot';
    public $baseUrl = '@web';
    public $css = [
        'css/gamma/style.css',
        'css/gamma/noJS.css',
    ];
    public $js = [
        'js/gamma/modernizr.custom.70736.js',
        'js/gamma/jquery.masonry.min.js',
        'js/gamma/jquery.history.js',
        'js/gamma/js-url.min.js',
        'js/gamma/jquerypp.custom.js',
        'js/gamma/gamma.js',
    ];

    public $depends = [
        'app\assets\AppAsset',
    ];
}

Как мне переопределить версию jquery в дочернем asset bundle или, что тоже самое, на на одной нужной мне странице (вьюшке) фотогаллереи (только на одной странице)?

Спасибо.

Ответы

▲ 1

Я вот так весрию JQuery переопределяю:

class Jquery extends JqueryAsset
{
  public $js = [
    '//ajax.googleapis.com/ajax/libs/jquery/2.1.4/jquery.min.js',
  ];

  public $jsOptions = ['position' => \yii\web\View::POS_HEAD];
}