这篇文章主要讲解了“Yii2中怎么压缩js和css文件”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Yii2中怎么压缩js和css文件”吧!
官网文档
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中怎么压缩js和css文件”的内容了,经过本文的学习后,相信大家对Yii2中怎么压缩js和css文件这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是亿速云,小编将为大家推送更多相关知识点的文章,欢迎关注!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。