Yii2如何引入第三方類庫

在Yii2中如何恰當?shù)囊雑s、css對于新手而言是一件較為棘手的事情。很多時候我們對幫助文檔以及廣大網(wǎng)友的教程理解不深,而導致引入失敗,耗費了大量的時間。尤其是對于我們使用bower或composer下載的第三方庫而言。因此,在本文中,我們將介紹如何引入第三方的類庫。該方法誠實有效,且筆者鑒于是仿照Yii源碼所得,厚顏認為較為恰當,不當之處且做笑資,不必直面指出。

假入我們要引入的bootstrap-switch類庫目前處于vendor文件夾下面,我們直觀的考慮能夠使用AssetBundle引入。在yii2的高級模板里邊已經(jīng)有了這么個文件,后端文件的內(nèi)容大致為

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',
    ];


}

像往常引入單獨的js文件一樣,我們自然的使用

public $js = [
            '@vendor/....';
    ];

But,發(fā)現(xiàn)這個路徑?jīng)]有被正確的解析出來,那好,我們手動解析,

public $js = [
            Yii::getAlias('@vendor/....');
    ];

But,錯誤繼續(xù),這不能作為js的默認值。這可如何是好,本人才淺,著實迷糊了半天。后來想到y(tǒng)ii2自身也引入了一些js、css類庫,我何不仿照它來做。打開vendor/yiisoft/yii2/web/YiiAsset.php,內(nèi)容大致為

class YiiAsset extends AssetBundle
{
    public $sourcePath = '@yii/assets';
    public $js = [
        'yii.js',
    ];
    public $depends = [
        'yii\web\JqueryAsset',
    ];
}

瞬間恍然大悟,原來他對不同位置的類庫單獨定義了一些AssetBundle,而在sourcePath的默認值中可以使用別名。那么依葫蘆畫瓢子,就這樣

class SwitchAsset extends AssetBundle {

    public $sourcePath = '@vendor/bower/bootstrap-switch/dist';

    public $js = [
        'js/bootstrap-switch.min.js',
    ];

    public $css = [
        'css/bootstrap3/bootstrap-switch.min.css',
    ];
}

然后在需要引入這個庫的視圖文件中加入

SwitchAsset::register($this);

完美一擊。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 發(fā)現(xiàn) 關(guān)注 消息 iOS 第三方庫、插件、知名博客總結(jié) 作者大灰狼的小綿羊哥哥關(guān)注 2017.06.26 09:4...
    肇東周閱讀 15,060評論 4 61
  • 嗯哼嗯哼蹦擦擦~~~ 轉(zhuǎn)載自:https://github.com/Tim9Liu9/TimLiu-iOS 目錄 ...
    philiha閱讀 5,235評論 0 6
  • 博瑜閱讀 298評論 0 0
  • 這天,我們搬新家,朋友們都興高采烈地來家里吃飯,我也很高興,但傷神的是,崽崽已經(jīng)連續(xù)拉肚子好幾天,今天似乎嚴重了,...
    往者不諫5閱讀 364評論 2 2
  • 時間回退到2014年清明節(jié)小長假 2014年4.5號 放假當天下午你發(fā)來微信,假期一起出去玩撒,市內(nèi)或市外都可以。...
    sweetrandy閱讀 135評論 0 3

友情鏈接更多精彩內(nèi)容