25

资产包生成空的 JavaScript 和 CSS 文件

namespace frontend\assets;

return [

    'bundles' => [
        'frontend\assets\AppAsset',

    ],

    'targets' => [
        'frontend\assets\AppAsset' => [
            'basePath' => 'e:/path/yii2.loc/www',
            'baseUrl' => '',
            'js' => 'js/{ts}.js',
            'css' => 'css/{ts}.css',
        ],
    ],

    'assetManager' => [
        'basePath' => 'e:/path/yii2.loc/www/assets',
        'baseUrl' => '',
    ],
];

配置文件

return [

    'bundles' => [
        'frontend\assets\AppAsset',
    ],

    'targets' => [
        'frontend\assets\AppAsset' => [
            'basePath' => 'e:/path/yii2.loc/www',
            'baseUrl' => '',
            'js' => 'cache/{ts}.js',
            'css' => 'cache/{ts}.css',
        ],
    ],

    'assetManager' => [
        'basePath' => 'e:/path/yii2.loc/www/assets',
        'baseUrl' => '',
    ],
];

然后在控制台

yii asset e:\path\config.php e:\path\compressed.php
//compresed.php it's result file with name of compressed files

并且在配置中

'assetManager' => [
    'bundles' => require dirname(__DIR__) . '/assets/compressed.php',
],

CSS 和 JavaScript 文件位于一个目录中:

e:/path/yii2.loc/www/css

e:/path/yii2.loc/www/js

捆绑生成空到:

e:/path/yii2.loc/www/cache/css 和 e:/path/yii2.loc/www/cache/js

我做错了什么?

4

2 回答 2

1

在您的 config.php 中,尝试像以下 LOC 一样配置组件“assetManager”:

'components' => [
    'assetManager' => [
        'class' => 'yii\web\AssetManager', 
        'basePath' => 'YOUR_BASE_PATH' 
    ],  
],
于 2016-04-22T10:23:47.263 回答
0

你应该设置别名@web 和@webroot,因为这个文件将在控制台脚本中使用。然后使用别名来设置 basePath 和 baseUrl 参数

查看更多信息https://www.yiiframework.com/doc/guide/2.0/en/structure-assets

于 2019-06-26T08:27:38.477 回答