Yii2使用小技巧之通過(guò) Composer 添加 FontAwesome 字體資源
這回要說(shuō)的是,如何給 Yii2 項(xiàng)目添加外部資源(external assets),以 FontAwesome 為例子。
Yii2 開始使用 composer 來(lái)做項(xiàng)目的依賴管理,這貨是類似于 NodeJS 里面 npm 的東東,可以自動(dòng)獲取 Github 上最新版本的第三方庫(kù)(比如 Bootstrap 啦,F(xiàn)ontAwesome 啦之類的)。按官方教程裝好后,就可以開始初始化項(xiàng)目了。
一、初始化項(xiàng)目
通過(guò) Composer 來(lái)初始化
php composer.phar create-project --prefer-dist --stability=dev yiisoft/yii2-app-basic basic
然后開始碼代碼,Model Controller View 神馬的,此處按下不表。
二、安裝 FontAwesome
終于,你的項(xiàng)目發(fā)展到需要引用第三方庫(kù)了,我們?nèi)匀煌ㄟ^(guò) Composer 來(lái)安裝。搜索packagist.org官方的包列表,我們找到了 FontAwesome 的配置。將 FortAwesome/Font-Awesome": "*" 添加到項(xiàng)目的 composer.json 配置文件里。
// ... "require": { "php": ">=5.4.0", "hybridauth/hybridauth": "dev-master", "FortAwesome/Font-Awesome": "*", // <- 這里 "yiisoft/yii2": "*", "yiisoft/yii2-swiftmailer": "*", "yiisoft/yii2-bootstrap": "*", "yiisoft/yii2-debug": "*", "yiisoft/yii2-gii": "*" }, // ...
然后運(yùn)行
php composer.phar update
從 Github 上拉取 FontAwesome 的包到項(xiàng)目本地。
三、創(chuàng)建 FontAwesome 資源包(asset bundle)
為了使用這些庫(kù),我們需要在項(xiàng)目的 /assets 目錄下創(chuàng)建一個(gè) FontAwesomeAsset.php
namespace assets; use yii\web\AssetBundle; class FontAwesomeAsset extends AssetBundle { // 下面這些資源文件并不在 web 目錄下,瀏覽器無(wú)法直接訪問。所以我們需要 // 指定 sourcePath 屬性。注意 @vendor 這個(gè) alias,表示 vender 目錄 public $sourcePath = '@vendor/fortawesome/font-awesome'; public $css = [ 'css/font-awesome.css', ]; }
四、注冊(cè)文件,引入資源
有兩種方法。第一種,當(dāng)你想在某一個(gè)特定頁(yè)面引入這個(gè)資源包
// 這兩句直接寫在那一頁(yè)的 view 里 use assets\FontAwesomeAsset; FontAwesomeAsset::register($this);
第二種,在你的網(wǎng)站全局引入,或者將其作為另一個(gè)資源的依賴引用。在項(xiàng)目的 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' ]; }
刷新頁(yè)面,看看是不是已經(jīng)引入了對(duì)應(yīng)的 css、js 資源。
- PHP YII框架開發(fā)小技巧之模型(models)中rules自定義驗(yàn)證規(guī)則
- yii2 頁(yè)面底部加載css和js的技巧
- Yii基于數(shù)組和對(duì)象的Model查詢技巧實(shí)例詳解
- Yii使用技巧大匯總
- yii2-GridView在開發(fā)中常用的功能及技巧總結(jié)
- Yii編程開發(fā)常見調(diào)用技巧集錦
- YII框架行為behaviors用法示例
- Yii2框架實(shí)現(xiàn)數(shù)據(jù)庫(kù)常用操作總結(jié)
- PHP的Yii框架中過(guò)濾器相關(guān)的使用總結(jié)
- YiiFramework入門知識(shí)點(diǎn)總結(jié)(圖文教程)
- YII框架常用技巧總結(jié)
相關(guān)文章
smarty模板引擎中內(nèi)建函數(shù)if、elseif和else的使用方法
這篇文章主要介紹了smarty模板引擎中內(nèi)建函數(shù)if、elseif和else的使用方法,通過(guò)兩個(gè)示例分析了if、elseif和else的使用技巧,需要的朋友可以參考下2015-01-01PHP后臺(tái)備份MySQL數(shù)據(jù)庫(kù)的源碼實(shí)例
今天小編就為大家分享一篇關(guān)于PHP后臺(tái)備份MySQL數(shù)據(jù)庫(kù)的源碼實(shí)例,小編覺得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來(lái)看看吧2019-03-03php json轉(zhuǎn)換相關(guān)知識(shí)(小結(jié))
這篇文章主要介紹了php json轉(zhuǎn)換相關(guān)知識(shí)(小結(jié)),小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2018-12-12Laravel學(xué)習(xí)教程之從入口到輸出過(guò)程詳解
這篇文章主要給大家介紹了關(guān)于Laravel學(xué)習(xí)教程之從入口到輸出過(guò)程的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧。2017-08-08