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

2018-09-07 21:33

阅读:231

  官网文档

  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文件的方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!


评论


亲,登录后才可以留言!