Yii2 禁用 Bootstrap Js、JQuery 和 CSS
Posted
技术标签:
【中文标题】Yii2 禁用 Bootstrap Js、JQuery 和 CSS【英文标题】:Yii2 disable Bootstrap Js, JQuery and CSS 【发布时间】:2014-12-31 07:09:31 【问题描述】:同标题,我不想使用 bootstrap.css 和 bootstrap.js。我尝试使用:
'assetManager' => [
'bundles' => [
'yii\bootstrap\BootstrapAsset' => [
'css' => [],
],
],
],
它删除了 bootstrap.css 但不能删除 bootstrap.js。有人可以帮助我吗?
【问题讨论】:
【参考方案1】:在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' => [],
],
],
],
更新
正如 Soju 在 cmets 中提到的,另一种替代方法是在位于 ./assets/
的 AppAsset
类中禁用这些文件,然后删除以下行:
public $depends = [
'yii\web\YiiAsset', #REMOVE
'yii\bootstrap\BootstrapAsset', #REMOVE
];
【讨论】:
为什么给我:Invalid Call – yii\base\InvalidCallException Setting read-only property: yii\web\Application::assetManager
?
如何在 Yii v1.1.15 中实现这一点?
这个不需要修改assetmanager...你只需要修改appasset bundle...
请注意:Afaikt:如果我们不想让 Yii 2 加载他们的 Jquery 版本,删除 'yii\web\YiiAsset' 将无济于事。 Jquery 仍然会加载。
确保你的assetManager数组在组件中!@IvoRenkema【参考方案2】:
在 AppAsset.php 文件中添加:
public function init()
parent::init();
// resetting BootstrapAsset to not load own css files
\Yii::$app->assetManager->bundles['yii\\bootstrap\\BootstrapAsset'] = [
'css' => [],
'js' => []
];
【讨论】:
这是一个比更改配置文件更简洁的选项,可用于从主题重置引导程序 我把那个放在哪里?在 AppAsset 类中?? \Yii::$app->assetManager->bundles['yii\\bootstrap4\\BootstrapAsset'] = [ 'css' => [], 'js' => [] ]; 【参考方案3】:对于遇到“无效呼叫”错误的任何人,您必须在 app/config/web.php
的 $config 变量中添加 Ali 对“组件”的回答,例如
'components' => [
'assetManager' => [
'bundles' => [
'yii\web\JqueryAsset' => [
'js'=>[]
],
'yii\bootstrap\BootstrapPluginAsset' => [
'js'=>[]
],
'yii\bootstrap\BootstrapAsset' => [
'css' => []
]
]
],
...
],
【讨论】:
这仅适用于基本模板以上是关于Yii2 禁用 Bootstrap Js、JQuery 和 CSS的主要内容,如果未能解决你的问题,请参考以下文章