溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

Yii2中怎么壓縮js和css文件

發(fā)布時間:2021-08-13 20:51:10 來源:億速云 閱讀:170 作者:chen 欄目:開發(fā)技術(shù)

這篇文章主要講解了“Yii2中怎么壓縮js和css文件”,文中的講解內(nèi)容簡單清晰,易于學習與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學習“Yii2中怎么壓縮js和css文件”吧!

官網(wǎng)文檔

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

yii目錄下運行

asset/template assets.php

生成assets.php,這是一個配置模板,并修改如下

<?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',
],
];

這里css和js全部用yuicompressor了

然后在web/assets下創(chuàng)建js,css文件夾,并設(shè)置權(quán)限777

安裝java命令行,ubuntu下

sudo apt-get install default-jre

下載yuicompressor.jar:

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

放到y(tǒng)ii根目錄下

運行

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

在config下會生成assets-dev.php文件

在config/web.php的component配置中添加

'assetManager' => [
'bundles' => require(__DIR__ . '/assets-' . YII_ENV . '.php'),
],

F5刷新頁面就可以看到使用了壓縮后的css和js了

如果要取消,注釋掉web.php中對應(yīng)代碼即可

PS:yii2 控制器、方法命名規(guī)范和訪問路由

如果模塊名稱或者控制器名稱或者動作名稱是用的駱駝格式的命名寫法,那么路由里面的每個大寫單詞之間都要用“-”來連接。如

DateTimeController::actionFastForward 相應(yīng)的路由為 date-time/fast-forward。

例如:http://dfms.com/backend/web/api-test/test-upload

api-test是控制器名字

test-upload是方法名字

感謝各位的閱讀,以上就是“Yii2中怎么壓縮js和css文件”的內(nèi)容了,經(jīng)過本文的學習后,相信大家對Yii2中怎么壓縮js和css文件這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是億速云,小編將為大家推送更多相關(guān)知識點的文章,歡迎關(guān)注!

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI