>PHP 프레임워크 >YII >yii2 프레임워크에서 정적 리소스를 로드하는 방법

yii2 프레임워크에서 정적 리소스를 로드하는 방법

王林
王林앞으로
2020-12-30 09:21:432949검색

yii2 프레임워크에서 정적 리소스를 로드하는 방법

구체적인 작업은 다음과 같습니다.

(동영상 공유 학습: 프로그래밍 동영상)

1. 자산/AppAsset에서 메서드를 정의합니다.

<?php
/**
 * @link http://www.yiiframework.com/
 * @copyright Copyright (c) 2008 Yii Software LLC
 * @license http://www.yiiframework.com/license/
 */
 
namespace app\assets;
 
use yii\web\AssetBundle;
 
/**
 * @author Qiang Xue <qiang.xue@gmail.com>
 * @since 2.0
 */
class AppAsset extends AssetBundle
{
    public $basePath = &#39;@webroot&#39;;
    public $baseUrl = &#39;@web&#39;;
 
    // 全局
    public $css = [
        
    ];
 
    // 全局
    public $js = [
        
    ];
 
    public $depends = [
        // &#39;yii\web\YiiAsset&#39;,
        // &#39;yii\bootstrap\BootstrapAsset&#39;,  // 注释掉禁用bootstrap
    ];
 
    // 这是设置所有js放置的位置 
    public $jsOptions = [  
        &#39;position&#39; => \yii\web\View::POS_HEAD,    
    ]; 
 
    //定义按需加载JS方法
    public static function addJs($view, $jsfile) { 
        $view->registerJsFile(
            $jsfile, 
            [
                AppAsset::className(), 
                "depends" => "app\assets\AppAsset"
            ]
        ); 
    } 
 
    //定义按需加载css方法
    public static function addCss($view, $cssfile) { 
        $view->registerCssFile(
            $cssfile, 
            [
                AppAsset::className(), 
                "depends" => "app\assets\AppAsset"
            ]
        ); 
    } 
 
}

2. 뷰에서

<?php
 
/* @var $this \yii\web\View */
/* @var $content string */
 
use yii\helpers\Html;
use yii\bootstrap\Nav;
use yii\bootstrap\NavBar;
use yii\widgets\Breadcrumbs;
use app\assets\AppAsset;
 
// 注册全局加载
AppAsset::register($this);
 
// 按需加载css
AppAsset::addCss($this, Yii::$app->request->baseUrl."/css/site.css");
// 按需加载js
AppAsset::addJs($this, Yii::$app->request->baseUrl."/js/respond.min.js");
 
?>
<?php $this->beginPage() ?>
<!DOCTYPE html>
<html lang="<?= Yii::$app->language ?>">
<head>
    <meta charset="<?= Yii::$app->charset ?>">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1">
    <?= Html::csrfMetaTags() ?>
    <title><?= Html::encode($this->title) ?></title>
    <?php $this->head() ?>
</head>
<body>
<?php $this->beginBody() ?>
 
        
    <?= $content ?>
 
<?php $this->endBody() ?>
</body>
</html>
<?php $this->endPage() ?>

를 호출합니다. yii 프레임워크

위 내용은 yii2 프레임워크에서 정적 리소스를 로드하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
이 기사는 csdn.net에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제