yii2如何引入自定义css或js文件
来源:互联网 发布:有什么软件推广 编辑:程序博客网 时间:2024/04/29 00:15
Yii2 在管理css和js脚本方面,引入了一个资源管理包的概念AssetBundle。 先直接写出我所知道的两种引入方式:现假如我要引入我根目录下的 public/assets/js/hello.js 文件 1)第一种是在视图文件中直接引入: 在视图文件开头先引入HTML帮助类<?php use yii\helpers\Html;?>
然后在文件中引入js:
<?=Html::jsFile('@web/public/assets/js/hello.js')?>如此即可
最后再说下yii2的资源管理类 AppAsset 类。使用它有什么好处呢?首先一个是它可以规范依赖关系,不会因为js先后的加载顺序不同而导致代码的不可用。比如说引入jquery,我们自定义的代码若是在jquery文件之前先引入了,就有可能出现错误。而使用AppAsset 可以让在视图里加载的文件肯定会排在你的基础样式或脚本的后面,不会出错。
下面说下如何引用:
namespace app\assets;use yii\web\AssetBundle;class AppAsset extends AssetBundle { public $basePath = '@webroot'; public $baseUrl = '@web'; public $css = [ 'public/skin/default_skin/css/theme.css', ]; public $js = [ 'public/vendor/jquery/jquery-1.11.1.min.js', 'public/vendor/jquery/jquery_ui/jquery-ui.min.js', 'public/js/bootstrap/bootstrap.min.js', ]; //依赖包 public $depends = [ //这里写你的依赖包即可,没有就别写 ]; //导入当前页的功能js文件,注意加载顺序,这个应该最后调用 public static function addPageScript($view, $jsfile) { $view->registerJsFile($jsfile, [AppAsset::className(), 'depends' => 'app\assets\AppAsset']); } }然后在我们的模板开头部分加上://自动加载资源AppAsset::register($this);然后导入js://导入js资源\app\assets\AppAsset::addPageScript($this,'js文件相对路径或url'); //@web/public/assets/js/hello.js
如此即可。再延伸一下,假如几个页面都共同引入了相同的几个js或css文件安,那么可以在AppAsset里导入当前js文件函数里,一次性加载多几个js文件://导入当前页的功能js文件,注意加载顺序,这个应该最后调用 public static function addPageScript($view) { $view->registerJsFile('@web/public/assets/js/hello.js', [AppAsset::className(), 'depends' => 'app\assets\AppAsset']);}在视图中直接调用addPageScript($this)即可//导入js资源\app\assets\AppAsset::addPageScript($this);
0 0
- yii2如何引入自定义css或js文件
- yii2引入css和js文件
- YII2在视图中引入js/css文件
- Yii2--禁用layout后引入Js、Css
- 引入外部JS或CSS文件的写法
- 在laravel5中引入css或js文件
- 如何在jsp文件中引入css和js文件
- yii框架如何引入css、img、js文件
- Laravel页面如何引入css/js等静态文件?
- 引入外部css ,js文件
- yii引入js,css文件
- ftl文件引入css,js
- maven项目引入js或css(SpringMVC):
- maven项目引入js或css
- jquery 如何引入css 文件
- SpringMVC如何引入css文件
- yii2中导入js,css文件
- YII2框架引用js以及css 文件
- 二叉排序树的一个简单实现
- 10种经典排序算法及复杂度总结
- linux 下如何给火狐安装flash插件(常用命令cd cp tar 实践)
- Nginx+Tomcat负载平衡
- 情绪ABC理论
- yii2如何引入自定义css或js文件
- mongodb创建、删除、切换
- 如何判断JAVA Script对象是否存在
- 对话框控件大小随窗口的大小变化而变化
- apache commons包简介
- 设计模式--类的关系
- 《林锐-高质量C/C++编程指南》笔记
- 几个SQL语句笔试题
- Linux内存占用情况分析