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 相关文章推荐
新版mysql+apache+php Linux安装指南
Oct 09 PHP
用PHP调用Oracle存储过程的方法
Sep 12 PHP
PHP常用特殊运算符号和函数总结(php新手入门必看)
Feb 02 PHP
php无限分类且支持输出树状图的详细介绍
Jun 19 PHP
php上传文件问题汇总
Jan 30 PHP
php简单定时执行任务的实现方法
Feb 23 PHP
php 在线导入mysql大数据程序
Jun 11 PHP
php实现短信发送代码
Jul 05 PHP
Symfony2针对输入时间进行查询的方法分析
Jun 28 PHP
PHP实现基于回溯法求解迷宫问题的方法详解
Aug 17 PHP
php实现的生成排列算法示例
Jul 25 PHP
PHP的new static和new self的区别与使用
Nov 27 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
实现“上一页”和“下一页按钮
2006/10/09 PHP
php字符串按照单词进行反转的方法
2015/03/14 PHP
web 页面分页打印的实现
2009/06/22 Javascript
js查找节点的方法小结
2015/01/13 Javascript
JS+CSS实现闪烁字体效果代码
2016/04/05 Javascript
浅谈jQuery双事件多重加载的问题
2016/10/05 Javascript
简单理解js的prototype属性及使用
2016/12/07 Javascript
jQuery实现6位数字密码输入框
2016/12/29 Javascript
QRCode.js:基于JQuery的生成二维码JS库的使用
2017/06/23 jQuery
Vue2 配置 Axios api 接口调用文件的方法
2017/11/13 Javascript
Vue-Router基础学习笔记(小结)
2018/10/15 Javascript
微信小程序实现九宫格抽奖
2020/04/15 Javascript
微信小程序wxml列表渲染原理解析
2019/11/27 Javascript
nodeJs的安装与npm全局环境变量的配置详解
2020/01/06 NodeJs
elementui更改el-dialog关闭按钮的图标d的示例代码
2020/08/04 Javascript
[01:48]2018DOTA2亚洲邀请赛主赛事第二日五佳镜头 VG完美团战逆转TNC
2018/04/05 DOTA
Python3实现从文件中读取指定行的方法
2015/05/22 Python
在Mac OS系统上安装Python的Pillow库的教程
2015/11/20 Python
Python解析excel文件存入sqlite数据库的方法
2016/11/15 Python
Python的标准模块包json详解
2017/03/13 Python
Python3.6使用tesseract-ocr的正确方法
2018/10/17 Python
Python列表对象实现原理详解
2019/07/01 Python
如何使用pandas读取txt文件中指定的列(有无标题)
2020/03/05 Python
python 如何设置守护进程
2020/10/29 Python
python mongo 向数据中的数组类型新增数据操作
2020/12/05 Python
优质飞蝇钓和渔具:RiverBum
2020/05/10 全球购物
Chupi官网:在爱尔兰手工制作的订婚、结婚戒指和精美珠宝
2020/09/28 全球购物
一道Delphi上机题
2012/06/04 面试题
资深财务管理人员自我评价
2013/09/22 职场文书
学校安全工作制度
2014/01/19 职场文书
致标枪运动员加油稿
2014/02/15 职场文书
幼儿园六一儿童节主持节目串词
2014/03/21 职场文书
婚内分居协议书范文
2014/11/26 职场文书
2015年服务员个人工作总结
2015/05/27 职场文书
机械原理课程设计心得体会
2016/01/15 职场文书
四年级作文之植物
2019/09/20 职场文书