簡體   English   中英

如何在Yii2中使用自定義css文件來布局模塊

[英]How to use custom css file for layout of a module in Yii2

我正在使用Yii2的基本包。 我創建了一個名為Admin的模塊,我希望這個模塊有自己的布局。 但我不知道在哪里放置所有的CSS文件。 然后,如何將它們包含在layout.php中。

我的目錄結構:

basic
-- module
  -- admin
    -- controllers
       -- DefaultController.php
    -- views
       -- default
       -- layouts
          -- main.php
          -- css
             -- style.css

在main.php中,我使用此代碼,但它不起作用:

<?php $this->registerLinkTag([
    'rel'  => 'stylesheet',
    'href' => 'css/style.css',
]);
$this->head(); ?>

在此處創建自定義資產包類文件:

frontend/module/admin/assets/AdminAsset.php

正確初始化$sourcePath$css變量很重要。 這是一個例子:

use yii\web\AssetBundle;   

class AdminAsset extends AssetBundle {

    // The directory that contains the source asset files for this asset bundle
    public $sourcePath = '@app/module/admin/web';

    // List of CSS files that this bundle contains
    public $css = ['css/admin.css'];

}

現在您可以注冊此AdminAsset包(在布局,視圖等中):

use frontend\module\admin\assets\AdminAsset;
AdminAsset::register($this);

打開“基本”文件夾。 您將看到一個名為assets的文件夾。
然后打開assets文件夾並在AppAsset.php文件中添加你的css

class AppAsset extends AssetBundle
{
    public $basePath = '@webroot';
    public $baseUrl = '@web';
    public $css = [
        'css/site.css',
        'css/main.css',
    ];
    public $js = [
    ];
    public $depends = [
        'yii\web\YiiAsset',
        'yii\bootstrap\BootstrapAsset',
    ];
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM