欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

Yii2中使用asset压缩js,css文件的方法

程序员文章站 2024-04-01 23:11:34
官网文档 yii目录下运行 asset/template assets.php 生成assets.php,这是一个配置模板,并修改如下

官网文档

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下创建js,css文件夹,并设置权限777

安装java命令行,ubuntu下

sudo apt-get install default-jre

下载yuicompressor.jar:

放到yii根目录下

运行

./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中对应代码即可

ps:yii2 控制器、方法命名规范和访问路由

如果模块名称或者控制器名称或者动作名称是用的骆驼格式的命名写法,那么路由里面的每个大写单词之间都要用“-”来连接。如

datetimecontroller::actionfastforward 相应的路由为 date-time/fast-forward。

例如:

api-test是控制器名字

test-upload是方法名字

以上所述是小编给大家介绍的yii2中使用asset压缩js,css文件的方法,希望对大家有所帮助