리소스 번들 구성:
CSS/JS 관리를 위해 Yii2는 AssetBundle 리소스 패키지 클래스를 사용합니다.
백엔드/assets/AppAsset.php 열기
namespace backendassets; use yiiwebAssetBundle; class AppAsset extends AssetBundle { public $basePath = [email protected]/* */'; public $baseUrl = [email protected]/* */';
//全局CSS public $css = [ 'css/animate.css', 'css/style.min.css', ]; //全局JS public $js = [ 'js/jquery-2.1.1.js' ]; //依赖关系 public $depends = [ 'yiiwebYiiAsset', 'yiiootstrapBootstrapAsset', ]; //定义按需加载JS方法,注意加载顺序在最后 public static function addScript($view, $jsfile) { $view->registerJsFile($jsfile, [AppAsset::className(), 'depends' => 'backendassetsAppAsset']); } //定义按需加载css方法,注意加载顺序在最后 public static function addCss($view, $cssfile) { $view->registerCssFile($cssfile, [AppAsset::className(), 'depends' => 'backendassetsAppAsset']); } }
정적 리소스가 뷰에 로드됩니다
1. 레이아웃 ) 전역 CSS/JS 사용
use yiihelpersHtml; use backendassetsAppAsset; use backendwidgetsAlert; AppAsset::register($this);
2. 뷰에 별도의 스타일 로드
$cssString = ".gray-bg{color:red;}"; $this->registerCss($cssString);
3. 뷰에 별도의 JS 로드
<?php$this->registerJs( '$("document").ready(function(){ $("#login-form").validate({ errorElement : "small", errorClass : "error", rules: { "AgNav[nav_cn]": { required: true, }, }, messages:{ "AgNav[nav_cn]" : { required : "此字段不能为空.", }, } }); });' );?>
또는
<div id="mybutton">点我弹出OK</div> <?php $this->beginBlock('test') ?> $(function($) { $('#mybutton').click(function() { alert('OK'); }); }); <?php $this->endBlock() ?> <?php $this->registerJs($this->blocks['test'], yiiwebView::POS_END); ?>
4. JS/CSS 파일을 뷰에 추가
사용자 지정 기능
public static function addScript($view, $jsfile) { $view->registerJsFile($jsfile, [AppAsset::className(), 'depends' => 'backendassetsAppAsset']); } AppAsset::register($this); //只在该视图中使用非全局的jui AppAsset::addScript($this,[email protected]/* *//js/jquery-ui.custom.min.js'); AppAsset::addCss($this,[email protected]/* *//css/font-awesome/css/font-awesome.min.css');
을 사용하여 직접 로드
AppAsset::register($this); //css定义一样 $this->registerCssFile([email protected]/* *//css/font-awesome.min.css',['depends'=>['backendassetsAppAsset']]); $this->registerJsFile([email protected]/* *//js/jquery-ui.custom.min.js',['depends'=>['backendassetsAppAsset']]);
위 내용은 yii2.0 정적자원 js css 소개방법 내용입니다. 더 많은 관련 내용은 PHP 중국어 홈페이지(www.php.cn)를 참고해주세요!