Diese Erweiterung beruht auf Bower und/oder NPM Packages für die Asset Installation. Bevor Sie diese Erweiterung einsetzen, sollten Sie entscheiden, auf welche Weise Sie diese Packages installieren möchten.
Sie können asset-packagist.or als Package-Quelle für die Bootstrap-Assets angeben.
Fügen Sie dazu folgende Zeilen zur composer.json
-Datei ihres Projekts hinzu:
"repositories": [
{
"type": "composer",
"url": "https://asset-packagist.org"
}
]
Passen Sie @npm
und @bower
in der Konfiguration ihrer Applikation wie folgt an:
return [
//...
'aliases' => [
'@bower' => '@vendor/bower-asset',
'@npm' => '@vendor/npm-asset',
],
//...
];
Installieren Sie das composer asset plugin global durch das Ausführen folgendes Befehls:
composer global require "fxp/composer-asset-plugin:^1.4.0"
Fügen Sie folgende Zeilen zur composer.json
-Datei ihres Projekts hinzu um das Verzeichnis der Installation von Assets anzupassen
falls Sie möchten, das Yii sie verwaltet:
"extra": {
"asset-installer-paths": {
"npm-asset-library": "vendor/npm",
"bower-asset-library": "vendor/bower"
}
}
Daraufhin können Sie den composer install bzw. update Befehl ausführen um die Boostrap Assets zu installieren.
Warnung: Das Plugin
fxp/composer-asset-plugin
verlangsamt dencomposer update
Befehl signifikant verglichen zur "asset-packagist"-Methode.
Sie kännen die Bootstrap Assets direkt via Bower oder NPM Client installieren.
Fügen Sie dafür folgende Zeilen zur package.json
-Datei Ihres Projekts hinzu:
{
...
"dependencies": {
"bootstrap": "4.2.1",
...
}
...
}
Fügen Sie zur composer.json
-Datei Ihres Projekts folgende Zeilen hinzu zum Verhindern von redundanten Bootstrap-Installationen:
"replace": {
"npm-asset/bootstrap": ">=4.2.1"
},
Sie können die Bootstrap Assets vom offiziellen CDN laden.
Fügen Sie zur composer.json
-Datei Ihres Projekts folgende Zeilen hinzu zum Verhindern von redundanten Bootstrap-Installationen:
"replace": {
"npm-asset/bootstrap": ">=4.2.1"
},
Konfigurieren Sie die 'assetManager'-Komponente wie folgt (überschreibt die Bootstrap Asset mit den CDN Links):
return [
'components' => [
'assetManager' => [
// override bundles to use CDN :
'bundles' => [
'yii\bootstrap4\BootstrapAsset' => [
'sourcePath' => null,
'baseUrl' => 'https://stackpath.bootstrapcdn.com/bootstrap/4.2.1',
'css' => [
'css/bootstrap.min.css'
],
],
'yii\bootstrap4\BootstrapPluginAsset' => [
'sourcePath' => null,
'baseUrl' => 'https://maxcdn.bootstrapcdn.com/bootstrap/4.2.1',
'js' => [
'js/bootstrap.bundle.min.js'
],
],
],
],
// ...
],
// ...
];
Falls Sie den Bootstrap Quelltext direkt anpassen möchten, können Sie das CSS direkt von den Quell *.sass-Dateien kompilieren. In diesem Fall macht die Installation der Bootstrap Assets via composer bzw. Bower/NPM kein Sinn, da Sie keine Dateien innerhalb des 'vendor'-Verzeichnisses bearbeiten können. Sie müssen die Bootstrap-Assets manuell herunterladen und sie irgendwo in Ihrem Projekt platzieren (z.B. 'assets/source/bootstrap').
Fügen Sie zur composer.json
-Datei Ihres Projekts folgende Zeilen hinzu zum Verhindern von redundanten Bootstrap-Installationen:
"replace": {
"npm-asset/bootstrap": ">=4.2.1"
},
Konfigurieren Sie die 'assetManager'-Komponente wie folgt (überschreibt die Bootstrap Assets):
return [
'components' => [
'assetManager' => [
// override bundles to use local project files :
'bundles' => [
'yii\bootstrap4\BootstrapAsset' => [
'sourcePath' => '@app/assets/source/bootstrap/dist',
'css' => [
YII_ENV_DEV ? 'css/bootstrap.css' : 'css/bootstrap.min.css',
],
],
'yii\bootstrap4\BootstrapPluginAsset' => [
'sourcePath' => '@app/assets/source/bootstrap/dist',
'js' => [
YII_ENV_DEV ? 'js/bootstrap.js' : 'js/bootstrap.min.js',
]
],
],
],
// ...
],
// ...
];
Nach dem Verändern des Bootstrap Quellcodes, stellen Sie sicher, dass sie neu kompiliert werden, z.B. mittels npm run dist
.