Yii2: registerJs () неявно включает JqueryAsset, как избежать

В Yii2 есть $this->registerJs() Метод доступен в представлениях для регистрации встроенного JS. Я использую это как описано в документация:

$js = "...prepare js code...";
$this->registerJs($js, View::POS_READY);

Проблема в том, что с View::POS_READY (который является значением по умолчанию для второго аргумента) registerJs() неявно требует yii\web\JqueryAsset (исходный код).

Но я уже включил Jquery в свой пакет активов — это all-min.jsЕсть плагины Jquery +, минимизированные и объединенные в одном файле. Yii2 включает в себя JqueryAsset, поэтому дублирует Jquery на результирующей странице.

Как мне сообщить Yii2, что Jquery уже включен, или как-то иначе избежать этого дублирования?

1

Решение

Вы можете легко настроить пакет активов jquery, настроив assetManager в конфигурации компонентов приложения (обычно config/web.php).

Вы можете отключить один или несколько пакетов активов, связав false с именами пакетов активов, которые вы хотите отключить:

    'assetManager' => [
'bundles' => [
'yii\web\JqueryAsset' => false,
],
],

Прочитайте больше : http://www.yiiframework.com/doc-2.0/guide-structure-assets.html#customizing-asset-bundles

2

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector