我有一个基于高级应用程序模板的网站,一切正常,除了我想将所有 css 和 js 文件合并为一个。
所以我阅读了官方文档以合并资产。
问题:
- bootstrap 的 js 文件未压缩并单独包含,但 css 文件被压缩并完美组合(与其他文件)?
- 如何组合小部件中包含的资产?
这是我的 assets.php(与 php yii 资产命令一起使用)
Yii::setAlias('@webroot', __DIR__ . '/frontend/web');
Yii::setAlias('@web', '/');
return [
// Adjust command/callback for JavaScript files compressing:
'jsCompressor' => 'java -jar compiler.jar --js {from} --js_output_file {to}',
// Adjust command/callback for CSS files compressing:
'cssCompressor' => 'yui-compressor --type css {from} -o {to}',
// The list of asset bundles to compress:
'bundles' => [
'yii\web\JqueryAsset',
'yii\bootstrap\BootstrapAsset',
'frontend\assets\AppAsset',
'yii\web\YiiAsset',
'\rmrevin\yii\fontawesome\AssetBundle',
],
// Asset bundle for compression output:
'targets' => [
'all' => [
'class' => 'yii\web\AssetBundle',
'basePath' => '@webroot',
'baseUrl' => '@web',
'js' => 'js/all-{hash}.js',
'css' => 'css/all-{hash}.css',
],
],
// Asset manager configuration:
'assetManager' => [
'basePath' => '@webroot/assets',
'baseUrl' => '@web/assets',
],
];