>PHP 프레임워크 >YII >Yii2 프레임워크에 CSS 및 JS 파일을 도입하는 방법

Yii2 프레임워크에 CSS 및 JS 파일을 도입하는 방법

(*-*)浩
(*-*)浩원래의
2019-12-18 14:59:482478검색

Yii2 프레임워크에 CSS 및 JS 파일을 도입하는 방법

yii2에서는 yii2 버전 업그레이드로 인해 yii2의 사용법이 yii1과 많이 달라져서 요즘 뷰 레이어의 뷰 인터페이스를 헤매고 있습니다. . 그래서 어떤 문제에 직면하고 있나요? (추천 학습:##yii Framework)#🎜🎜 ## 🎜🎜#문제는 CSS, js 파일을 어떻게 도입해야 할지 모르겠다는 것입니다! 커뮤니티의 다른 숙련된 마스터의 튜토리얼도 읽고 따라했지만 여전히 몇 가지 문제가 있습니다. 예를 들어 yii2 프로젝트가 열린 후 헤더와 테일을 제거하는 방법은 무엇입니까?

원래 main.php 파일을 변경하지 않고 JS 및 CSS 파일을 도입하는 방법 중 하나는 xxxAsset.php 구성 파일을 작성한 다음 xxx Asset::register($this)를 전달하는 것입니다. ) 파일을 가져올 수 있지만 이제 다시 문제가 발생했습니다. 이 코드가 유효하지 않아 작동하지 않습니다. Firebug를 연 후 CSS 또는 JS 파일을 헤드로 가져오지 않았고 스타일이 지저분해졌습니다.

나중에 관련 내용을 확인하다가 우연히 다른 분이 올려주신 yii2 백엔드 템플릿을 다운받아서 오늘 아침에 백엔드 스타일이 어떻게 구성되어 있는지 살펴보고 정리해봤습니다. :

1. 프론트 뷰에서 가장 간단한 것은 이전처럼 파일을 하나씩 소개하는 것이므로 상단에서 사용하여 코드 세그먼트

#🎜🎜를 호출합니다. #

use yii\helpers\Html;
그러면 아래 HTML에서 이렇게 호출하면 됩니다

<?=Html::jsFile(&#39;@web/***/js/***.js&#39;)?>//这里***代表你的目录名或者文件名
<?=Html::cssFile(&#39;@web/***/css/***.css&#39;)?>//***同上

이렇게 하면 필요가 없습니다. 다른 파일을 옮기려면 직접 import 해야 하는 파일을 import 하면 됩니다. 물론 이렇게 작성한다면 매번 로드하기 위해 많은 코드를 작성해야 하는 것이 가장 좋습니다. 구성파일에 그런데 아직은 아직까지 구성파일을 사용해서 소개하는 문제가 있어서 나중에 원인을 찾으면 공유하겠습니다. 🎜🎜#

2. 프런트 데스크는 이렇게 도입되었는데 컨트롤러에서 스타일 파일을 어떻게 커스터마이징할 수 있나요? 컨트롤러에 다음 코드를 추가하세요.

public $layout = &#39;layout&#39;;//在类中定义一个变量,名为$layout
이 레이아웃에는 이 디렉토리에 레이아웃.php라는 새 파일을 만들고 그 안에 코드를 추가했습니다.
<?php echo $content; ?>
#🎜 🎜#이런 식으로 컨트롤러는 자동으로 php 파일을 찾습니다. 현재 보기 디렉터리의 레이아웃 디렉터리에 보기 파일을 로드합니다. 위의 몇 줄의 짧은 코드는 CSS 및 JS 파일을 로드하는 방법을 모르는 초보자의 문제를 해결합니다. 모두 ***를 작성하는 데 문제가 있을 것이라고 생각합니다. Asset.php 파일은 그냥 내 방법을 사용하세요. 나중에 yii2에 익숙해지면 다른 방법을 사용하여 로드할 수 있습니다. 또한 보기에서 링크를 이동하는 방법을 추가하겠습니다. 상단에 클래스 라이브러리

use yii\helpers\Url;

을 추가하고 점프 링크가 필요한 곳에 다음과 같이 작성하세요.

<?phpecho Url::toRoute(&#39;post/index&#39;);?>//post为你的当前控制器名,index为view模版

위 내용은 Yii2 프레임워크에 CSS 및 JS 파일을 도입하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.