找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 1343|回复: 0
打印 上一主题 下一主题

Yii2使用小技巧之通过 Composer 添加 FontAwesome 字体资源

[复制链接]

2647

主题

2647

帖子

7881

积分

论坛元老

Rank: 8Rank: 8

积分
7881
跳转到指定楼层
楼主
发表于 2018-2-14 05:57:05 | 只看该作者 回帖奖励 |正序浏览 |阅读模式

            这回要说的是,如何给 Yii2 项目添加外部资源(external assets),以 FontAwesome 为例子。
Yii2 开始使用 composer 来做项目的依赖管理,这货是类似于 NodeJS 里面 npm 的东东,可以自动获取 Github 上最新版本的第三方库(比如 Bootstrap 啦,FontAwesome 啦之类的)。按官方教程装好后,就可以开始初始化项目了。
一、初始化项目
通过 Composer 来初始化
php composer.phar create-project --prefer-dist --stability=dev yiisoft/yii2-app-basic basic
然后开始码代码,Model Controller View 神马的,此处按下不表。
二、安装 FontAwesome
终于,你的项目发展到需要引用第三方库了,我们仍然通过 Composer 来安装。搜索packagist.org官方的包列表,我们找到了 FontAwesome 的配置。将 FortAwesome/Font-Awesome": "*" 添加到项目的 composer.json 配置文件里。
// ...
"require": {
"php": ">=5.4.0",
"hybridauth/hybridauth": "dev-master",
"FortAwesome/Font-Awesome": "*", //
然后运行
php composer.phar update
从 Github 上拉取 FontAwesome 的包到项目本地。
三、创建 FontAwesome 资源包(asset bundle)
为了使用这些库,我们需要在项目的 /assets 目录下创建一个 FontAwesomeAsset.php
namespace assets;
use yii\web\AssetBundle;
class FontAwesomeAsset extends AssetBundle
{
// 下面这些资源文件并不在 web 目录下,浏览器无法直接访问。所以我们需要
// 指定 sourcePath 属性。注意 @vendor 这个 alias,表示 vender 目录
public $sourcePath = '@vendor/fortawesome/font-awesome';
public $css = [
  'css/font-awesome.css',
];
}
四、注册文件,引入资源
有两种方法。第一种,当你想在某一个特定页面引入这个资源包
// 这两句直接写在那一页的 view 里
use assets\FontAwesomeAsset;
FontAwesomeAsset::register($this);
第二种,在你的网站全局引入,或者将其作为另一个资源的依赖引用。在项目的 asset/AppAsset.php 中加上它:
class AppAsset extends AssetBundle
{
public $basePath = '@webroot';
public $baseUrl = '@web';
public $css = [
  'css/site.css',
];
public $js = [
];
public $depends = [
  'yii\web\YiiAsset',
  'yii\bootstrap\BootstrapAsset',
  // 在这里加上我们的 FontAwesomeAsset 包类
  'assets\FontAwesomeAsset'
];
}
刷新页面,看看是不是已经引入了对应的 css、js 资源。
            
            
您可能感兴趣的文章:
  • Yii2.0高级框架数据库增删改查的一些操作
  • Yii2隐藏frontend/web和backend/web的方法
  • Yii2框架引用bootstrap中日期插件yii2-date-picker的方法
  • yii2中的rules 自定义验证规则详解
  • yii2 页面底部加载css和js的技巧
  • 浅析Yii2中GridView常见操作
  • Yii2搭建后台并实现rbac权限控制完整实例教程
  • Yii2如何批量添加数据
  • Yii2分页的使用及其扩展方法详解
  • Yii2创建表单(ActiveForm)方法详解
  • Yii2单元测试用法示例
            
  • 分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
    收藏收藏
    回复

    使用道具 举报

    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    用户反馈
    客户端