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


Posted in PHP onNovember 24, 2016

官网文档

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

安装java命令行,ubuntu下

sudo apt-get install default-jre

下载yuicompressor.jar:

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

放到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。

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

api-test是控制器名字

test-upload是方法名字

以上所述是小编给大家介绍的Yii2中使用asset压缩js,css文件的方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

PHP 相关文章推荐
PHP 万年历实现代码
Oct 18 PHP
PHP中array_merge和array相加的区别分析
Jun 17 PHP
php实现在线生成条形码示例分享(条形码生成器)
Dec 30 PHP
解决cPanel无法安装php5.2.17
Jun 22 PHP
PHP+Memcache实现wordpress访问总数统计(非插件)
Jul 04 PHP
PHP使用内置dir类实现目录遍历删除
Mar 31 PHP
如何解决phpmyadmin导入数据库文件最大限制2048KB
Oct 09 PHP
CodeIgniter基于Email类发邮件的方法
Mar 29 PHP
PHP中抽象类和抽象方法概念与用法分析
May 24 PHP
PHP登录(ajax提交数据和后台校验)实例分享
Dec 29 PHP
laravel unique验证、确认密码confirmed验证以及密码修改验证的方法
Oct 16 PHP
laravel框架如何设置公共头和公共尾
Oct 22 PHP
微信自定义分享php代码分析
Nov 24 #PHP
php插入含有特殊符号数据的处理方法
Nov 24 #PHP
PHP合并数组的2种方法小结
Nov 24 #PHP
PHP magento后台无法登录问题解决方法
Nov 24 #PHP
微信 开发生成带参数的二维码的实例
Nov 23 #PHP
微信 getAccessToken方法详解及实例
Nov 23 #PHP
Yii核心验证器api详解
Nov 23 #PHP
You might like
表格展示无限级分类(PHP版)
2012/08/21 PHP
php项目中百度 UEditor 简单安装调试和调用
2015/07/15 PHP
PHP+Apache+Mysql环境搭建教程
2016/08/01 PHP
PHP检查URL包含特定字符串实例方法
2019/02/11 PHP
PHP通过调用新浪API生成t.cn格式短网址链接的方法详解
2019/02/20 PHP
聊聊 PHP 8 新特性 Attributes
2020/08/19 PHP
js获取URL的参数的方法(getQueryString)示例
2013/09/29 Javascript
jquery鼠标停止移动事件
2013/12/21 Javascript
Array 重排序方法和操作方法的简单实例
2014/01/24 Javascript
JQuery实现可直接编辑的表格
2015/04/16 Javascript
jQuery热气球动画半透明背景的后台登录界面代码分享
2015/08/28 Javascript
JavaScript和HTML DOM的区别与联系及Javascript和DOM的关系
2015/11/15 Javascript
详解javascript中原始数据类型Null和Undefined
2015/12/17 Javascript
Bootstrap 3 进度条的实现
2017/02/22 Javascript
Vue响应式添加、修改数组和对象的值
2017/03/20 Javascript
js tab栏切换代码实例解析
2019/09/03 Javascript
jQuery实现聊天对话框
2020/02/08 jQuery
详解用js代码触发dom事件的实现方案
2020/06/10 Javascript
JS定时器如何实现提交成功提示功能
2020/06/12 Javascript
python实现从ftp服务器下载文件的方法
2015/04/30 Python
Python下载网络文本数据到本地内存的四种实现方法示例
2018/02/05 Python
Python 通过调用接口获取公交信息的实例
2018/12/17 Python
pyqt5 QProgressBar清空进度条的实例
2019/06/21 Python
Python基础之高级变量类型实例详解
2020/01/03 Python
CSS3田字格列表的样式编写方法
2018/11/22 HTML / CSS
HTML5 visibilityState属性详细介绍和使用实例
2014/05/03 HTML / CSS
html5小程序飞入购物车(抛物线绘制运动轨迹点)
2020/10/19 HTML / CSS
大四学生思想汇报
2014/01/13 职场文书
个人简历自我评价范文
2014/02/04 职场文书
简历中的自我评价范文
2014/02/05 职场文书
学校三八妇女节活动情况总结
2014/03/09 职场文书
投标人廉洁自律承诺书
2014/05/26 职场文书
工商管理本科生求职信
2014/07/13 职场文书
2014国庆节主题活动方案:快乐的国庆节
2014/09/16 职场文书
委托书的样本
2015/01/28 职场文书
Python+OpenCV实现在图像上绘制矩形
2022/03/21 Python