Yii2覆盖AssetConverter类

时间:2014-07-19 18:39:15

标签: yii2

在我的main-local.php中,我有以下代码:

'assetManager' => [
        'converter' => [
            'class' => 'yii\web\AssetConverter',
        ]
]

现在我想用自己的Converter覆盖默认的AssetConverter。当我将课程更改为custom\web\AssetConverter时,它找不到课程。

我在vendor\custom\web下创建了一个目录,其中包含AssetConverter.php文件和一个名称空间custom\web

我必须在哪里建立自己的AssetConverter文件?我是否必须在某处注册供应商,以便找到命名空间?

1 个答案:

答案 0 :(得分:0)

您的类名称空间不正确,也是作曲家程序包的vendor目录。 例如,将components或文件夹创建到项目根文件夹中。 在这种情况下,您的类名称空间应该是这样的(与基本应用程序模板相关):

namespace app\components;

然后将其包含在配置中:

'assetManager' => [
    'converter' => [
        'class' => 'app\components\AssetConverter',
    ]
]

另外,AssetConverter应该扩展\yii\web\AssetConverter以防您收到错误,找不到哪个类。