Heim  >  Artikel  >  Backend-Entwicklung  >  Methode zur Verwendung von Asset zum Komprimieren von JS- und CSS-Dateien im Beispiel von Yii2_php

Methode zur Verwendung von Asset zum Komprimieren von JS- und CSS-Dateien im Beispiel von Yii2_php

WBOY
WBOYOriginal
2016-12-05 13:28:281323Durchsuche

Offizielle Website-Dokumente

http://www.yiiframework.com/doc-2.0/guide-structure-assets.html

Im yii-Verzeichnis ausführen

asset/template asset.php

Generieren Sie „assets.php“, eine Konfigurationsvorlage, und ändern Sie sie wie folgt

<&#63;php
/**
* Configuration file for the "yii asset" console command.
*/
// In the console environment, some path aliases may not exist. Please define these:
Yii::setAlias('@webroot', __DIR__ . '/web');
Yii::setAlias('@web', '/');
return [
// Adjust command/callback for JavaScript files compressing:
// 'jsCompressor' => 'java -jar compiler.jar --js {from} --js_output_file {to}',
'jsCompressor' => 'java -jar yuicompressor.jar --type js {from} -o {to}',
// Adjust command/callback for CSS files compressing:
'cssCompressor' => 'java -jar yuicompressor.jar --type css {from} -o {to}',
// The list of asset bundles to compress:
'bundles' => [
'app\assets\AppAsset',
'yii\web\YiiAsset',
'yii\web\JqueryAsset',
],
// Asset bundle for compression output:
'targets' => [
'all' => [
'class' => 'yii\web\AssetBundle',
'basePath' => '@webroot/assets',
'baseUrl' => '@web/assets',
'js' => 'js/all-{hash}.js',
'css' => 'css/all-{hash}.css',
],
],
// Asset manager configuration:
'assetManager' => [
'basePath' => '@webroot/assets',
'baseUrl' => '@web/assets',
],
];

Alle CSS- und JS-Dateien hier verwenden Yuicompressor

Dann erstellen Sie js- und css-Ordner unter web/assets und setzen die Berechtigungen auf 777

Installieren Sie die Java-Befehlszeile unter Ubuntu

sudo apt-get install default-jre

Laden Sie yuicompressor.jar herunter:

https://github.com/yui/yuicompressor/releases

Legen Sie es im yii-Stammverzeichnis ab

Ausführen

./yii asset asset.php config/assets-dev.php

Die Datei asset-dev.php wird unter config generiert

Fügen Sie

in der Komponentenkonfiguration von config/web.php hinzu
'assetManager' => [
'bundles' => require(__DIR__ . '/assets-' . YII_ENV . '.php'),
],

F5 aktualisiert die Seite und Sie können das komprimierte CSS und JS sehen

Wenn Sie kündigen möchten, kommentieren Sie einfach den entsprechenden Code in web.php aus

PS: yii2-Controller, Methodenbenennungskonvention und Zugriffsrouting

Wenn der Modulname oder Controllername oder Aktionsname im Kamelformat geschrieben ist, muss jedes Großbuchstabenwort in der Route mit „-“ verbunden werden. Wie zum Beispiel

DateTimeController::actionFastForward Die entsprechende Route ist Datum-Uhrzeit/Schnellvorlauf.

Zum Beispiel: http://dfms.com/backend/web/api-test/test-upload

api-test ist der Controllername

Test-Upload ist der Methodenname

Die oben beschriebene Methode zum Komprimieren von JS- und CSS-Dateien in Yii2 wird Ihnen hoffentlich weiterhelfen. Wenn Sie Fragen haben, hinterlassen Sie mir bitte eine Nachricht Sie rechtzeitig. Ich möchte mich auch bei Ihnen allen für Ihre Unterstützung der Script House-Website bedanken!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn