AppAsset附带yii2 basic
class MainController extends \yii\base\Controller {
public function init()
{
parent::init();
}
public function beforeAction($action) {
if(Yii::$app->request->get('site')) {
// remove css/site.css
// add css/other.css
}
return parent::beforeAction($action);
}
public function actionErro()
{
return $this->render('erro');
}
}
我的主控制器
{{1}}
我需要删除 css / site.css 并使用其他名称添加新的名称,如上面的代码所示!
谢谢!
答案 0 :(得分:0)
最简单的方法是创建自己的资产,包含所有旧的AppAsset依赖项,但使用自定义css并注册它而不是AppAsset。
答案 1 :(得分:0)
你可以重写 `
public $css = [
'css/site.css',
];
到
public $css = [
'css/other.css',
'css/other_second.css',
];
(如果您想要连接多个css)。 同样适用于js文件。并删除beforeAction部分。
答案 2 :(得分:0)
我的解决方案
public function beforeAction($action) {
if(Yii::$app->request->get('site')) {
Yii::$app->assetManager->bundles = [
'app\assets\AppAsset' => [
'css' => ['css/layout-01.css'],
],
];
}
return parent::beforeAction($action);
}