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 09 PHP
基于php缓存的详解
May 15 PHP
高性能PHP框架Symfony2经典入门教程
Jul 08 PHP
php通过递归方式复制目录和子目录的方法
Mar 13 PHP
php从给定url获取文件扩展名的方法
Mar 14 PHP
分享50个提高PHP执行效率的技巧
Dec 26 PHP
在Yii2中使用Pjax导致Yii2内联脚本载入失败的原因分析
Mar 06 PHP
PHP基于堆栈实现的高级计算器功能示例
Sep 15 PHP
Bootstrap+PHP实现多图上传功能实例详解
Apr 08 PHP
PHP-FPM 的管理和配置详解
Feb 17 PHP
PHP 对象继承原理与简单用法示例
Apr 21 PHP
php 原生分页
Apr 01 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读取二进制流(C语言结构体struct数据文件)的深入解析
2013/06/13 PHP
PHP 字符串长度判断效率更高的方法
2014/03/02 PHP
PHP实现将浏览历史页面网址保存到cookie的方法
2015/01/26 PHP
php调用KyotoTycoon简单实例
2015/04/02 PHP
PHP is_array() 检测变量是否是数组的实现方法
2016/06/13 PHP
CodeIgniter开发实现支付宝接口调用的方法示例
2016/11/14 PHP
Thinkphp3.2实用篇之计算型验证码示例
2017/02/09 PHP
PHP实现腾讯与百度坐标转换
2017/08/05 PHP
PHP框架Laravel中使用UUID实现数据分表操作示例
2018/05/30 PHP
PHP聊天室简单实现方法详解
2018/12/08 PHP
myEvent.js javascript跨浏览器事件框架
2011/10/24 Javascript
基于jquery实现一张图片点击鼠标放大再点缩小
2013/09/29 Javascript
js call方法详细介绍(js 的继承)
2013/11/18 Javascript
js动态移动滚动条至底部示例代码
2014/04/24 Javascript
JavaScript实现斗地主游戏的思路
2016/02/29 Javascript
一览画面点击复选框后获取多个id值的方法
2016/05/30 Javascript
浅析JavaScript中var that=this
2017/02/17 Javascript
js与jQuery实现获取table中的数据并拼成json字符串操作示例
2018/07/12 jQuery
jQuery实现轮播图及其原理详解
2020/04/12 jQuery
Vue中 v-if/v-show/插值表达式导致闪现的原因及解决办法
2018/10/12 Javascript
微信小程序实现两边小中间大的轮播效果的示例代码
2018/12/07 Javascript
vue 解决文本框被键盘遮住的问题
2019/11/06 Javascript
详解webpack-dev-middleware 源码解读
2020/03/23 Javascript
JS使用正则表达式实现常用的表单验证功能分析
2020/04/30 Javascript
python 用正则表达式筛选文本信息的实例
2018/06/05 Python
python面试题小结附答案实例代码
2019/04/11 Python
python装饰器常见使用方法分析
2019/06/26 Python
基于python实现学生信息管理系统
2019/11/22 Python
Python使用jupyter notebook查看ipynb文件过程解析
2020/06/02 Python
领班岗位职责范文
2014/02/06 职场文书
财务会计大学生自我评价
2014/04/09 职场文书
餐厅筹备计划书
2014/04/25 职场文书
煤矿安全生产标语
2014/06/06 职场文书
导游词之杭州西湖
2019/09/19 职场文书
zabbix监控mysql的实例方法
2021/06/02 MySQL
Python+Matplotlib+LaTeX玩转数学公式
2022/02/24 Python