web-dev-qa-db-fra.com

Yii2 désactiver Bootstrap Js, JQuery et CSS

Identique au titre, je ne veux pas utiliser bootstrap.css et bootstrap.js. J'essaye d'utiliser:

'assetManager' => [
    'bundles' => [
        'yii\bootstrap\BootstrapAsset' => [
            'css' => [],
        ],
    ],
],

Il supprime bootstrap.css mais ne peut pas supprimer bootstrap.js. Quelqu'un peut m'aider?

33
taratula

Dans web.php fichier de configuration ajoutez le code suivant dans le tableau des composants:

'assetManager' => [
        'bundles' => [
            'yii\bootstrap\BootstrapPluginAsset' => [
                'js'=>[]
            ],
        ],
    ],

Pour être plus complet:

afin de désactiver Css (bootstrap.css):

'assetManager' => [
    'bundles' => [
        'yii\bootstrap\BootstrapAsset' => [
            'css' => [],
        ],
    ],
],

afin de désactiver JS (bootstrap.js):

'assetManager' => [
    'bundles' => [
        'yii\bootstrap\BootstrapPluginAsset' => [
            'js'=>[]
        ],
    ],
],

afin de désactiver JQuery (jquery.js)

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

Pour les désactiver tous:

'assetManager' => [
    'bundles' => [
        'yii\web\JqueryAsset' => [
            'js'=>[]
        ],
        'yii\bootstrap\BootstrapPluginAsset' => [
            'js'=>[]
        ],
        'yii\bootstrap\BootstrapAsset' => [
            'css' => [],
        ],

    ],
],

MISE À JOUR

Comme Soj mentionné dans les commentaires, une autre manière alternative serait de désactiver ces fichiers dans la classe AppAsset, qui se trouve dans ./assets/, puis supprimez les lignes suivantes:

public $depends = [
   'yii\web\YiiAsset',              #REMOVE
   'yii\bootstrap\BootstrapAsset',  #REMOVE
];
78
Ali MasudianPour

Pour toute personne qui obtient des erreurs "Appel non valide", vous devez ajouter la réponse d'ALi aux "composants" dans la variable $ config dans app/config/web.php Par exemple.

'components' => [
    'assetManager' => [
        'bundles' => [
            'yii\web\JqueryAsset' => [
                'js'=>[]
            ],
            'yii\bootstrap\BootstrapPluginAsset' => [
                'js'=>[]
            ],
            'yii\bootstrap\BootstrapAsset' => [
                'css' => []
            ]
        ]
    ],
    ...
],
8
PanPipes

Sur le fichier AppAsset.php, ajoutez ceci:

public function init()
{
    parent::init();
    // resetting BootstrapAsset to not load own css files
    \Yii::$app->assetManager->bundles['yii\\bootstrap\\BootstrapAsset'] = [
        'css' => [],
        'js' => []
    ];
}
8
Francesco Loddo