Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/21.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Yii2将资产指定给特定布局_Yii2_Assets - Fatal编程技术网

Yii2将资产指定给特定布局

Yii2将资产指定给特定布局,yii2,assets,Yii2,Assets,我有一个应用程序资产,它为应用程序中的所有视图注册 class AppAsset extends AssetBundle { public $basePath = '@webroot'; public $baseUrl = '@web'; public $css = [ '/plugins/font-awesome/css/font-awesome.min.css', '/dist/css/adminlte.min.css',

我有一个应用程序资产,它为应用程序中的所有视图注册

class AppAsset extends AssetBundle
{
    public $basePath = '@webroot';
    public $baseUrl = '@web';
    public $css = [
        '/plugins/font-awesome/css/font-awesome.min.css',
        '/dist/css/adminlte.min.css',
        'https://fonts.googleapis.com/css?family=Source+Sans+Pro:300,400,400i,700'


    ];
    public $js = [
        '/plugins/jquery/jquery.min.js',
        '/plugins/bootstrap/js/bootstrap.bundle.min.js',
        '/dist/js/adminlte.min.js'
    ];
    public $depends = [

    ];
}

现在,我正在尝试为站点的其他部分创建一个具有不同样式的新资源,我想将我的新资源分配给我的布局
main_statistisc.php
。但我不知道如何将其分配给我的新布局,目前我只使用
registerJsFile
registercsfile
,但默认的
AppAsset
样式仍然保留。如何将新资产用于特定布局/视图?

看,资产是在布局中手动注册的,因此为所有视图注册的
应用程序资产可能只是在
layouts\main.php
视图中注册为:

/* @var $content string */

use yii\helpers\Html;
...
use common\widgets\Alert;

AppAsset::register($this); // This one
?>
您可以以同样的方式在新布局
main\u statistisc.php
中注册
AppAssetStats.php
,并在所需的控制器中设置新布局

您的布局
main\u statistisc.php

use frontend\assets\AppAsset;
...
AppAssetStats::register($this); // Your new asset
?>
和您的控制器:

class SiteController extends Controller
{
    public $layout = 'main_statistisc'; //
确保在
main_statistisc.php
中没有
AppAsset::register($this)
行,这样它就不会与您的新资产冲突

您可以从Yii2资产文档中获得有关资产的其他信息:

…以及有关布局和视图的其他信息:

在布局文件中注册资产文件

<?php
    use frontend\assets\AppAssetStats;
    AppAssetStats::register($this);
?>