То же, что и название, я не хочу использовать bootstrap.css и bootstrap.js. Я пытаюсь использовать:
'assetManager' => [ 'bundles' => [ 'yii\bootstrap\BootstrapAsset' => [ 'css' => [], ], ], ],
Он удаляет bootstrap.css, но не может удалить bootstrap.js. Кто-нибудь может мне помочь?
В web.php
конфигурации web.php
добавьте следующий код в массив компонентов:
'assetManager' => [ 'bundles' => [ 'yii\bootstrap\BootstrapPluginAsset' => [ 'js'=>[] ], ], ],
Чтобы быть более полным:
чтобы отключить Css (bootstrap.css):
'assetManager' => [ 'bundles' => [ 'yii\bootstrap\BootstrapAsset' => [ 'css' => [], ], ], ],
чтобы отключить JS (bootstrap.js):
'assetManager' => [ 'bundles' => [ 'yii\bootstrap\BootstrapPluginAsset' => [ 'js'=>[] ], ], ],
чтобы отключить JQuery (jquery.js)
'assetManager' => [ 'bundles' => [ 'yii\web\JqueryAsset' => [ 'js'=>[] ], ], ],
Чтобы все они были отключены:
'assetManager' => [ 'bundles' => [ 'yii\web\JqueryAsset' => [ 'js'=>[] ], 'yii\bootstrap\BootstrapPluginAsset' => [ 'js'=>[] ], 'yii\bootstrap\BootstrapAsset' => [ 'css' => [], ], ], ],
ОБНОВИТЬ
Как упоминалось в комментариях к AppAsset
, другим альтернативным способом было бы отключить эти файлы в классе AppAsset
, который находится в ./assets/
, затем удалите следующие строки:
public $depends = [ 'yii\web\YiiAsset', #REMOVE 'yii\bootstrap\BootstrapAsset', #REMOVE ];
Для тех, кто получает ошибки «Invalid Call», вы должны добавить ответ Али на «компоненты» в переменной $ config в app/config/web.php
Например,
'components' => [ 'assetManager' => [ 'bundles' => [ 'yii\web\JqueryAsset' => [ 'js'=>[] ], 'yii\bootstrap\BootstrapPluginAsset' => [ 'js'=>[] ], 'yii\bootstrap\BootstrapAsset' => [ 'css' => [] ] ] ], ... ],
В файле AppAsset.php добавьте следующее:
public function init() { parent::init(); // resetting BootstrapAsset to not load own css files \Yii::$app->assetManager->bundles['yii\\bootstrap\\BootstrapAsset'] = [ 'css' => [], 'js' => [] ]; }