限时 5折! 详情

yii2项目实战-资源包管理

6007 0 0

资源包管理是个啥东东呢,可能一听上去有些蒙,没听过没见过。

其实这个资源包才是经常跟大家伙打交道的主儿,你真应该静下心来学一学。为什么这么说呢?因为平时我们管理静态资源文件比如css,js都得靠它。

更常见的是 yii2 内部很多小物件也都是利用他对资源进行管理。我们后面也准备自己手动写一个上传的小物件,所以在开始本章之前,你先要认识到我们这节要说的知识的重要性。很重要哈,为此我们也会说的很详细,看完后若是有任何问题或者想要点赞的,最下面随便哈。

正如我刚刚所说,这里所谓的资源指的就是静态文件css和js。你可能会疑惑:我更喜欢直接通过script标签和link标签引入js和css,有必要学这个吗?

我们使用yii框架无非也是便于实际开发,你php都会干啥还用yii呢?对吧,一个道理。

我们通过程序自动管理资源包的好处,也是为了避免引入各种css,js,对于一些复杂的js可能还要手动去解决各种依赖,再或者我们要升级一些资源文件,难不成你还要一个一个的找,然后再去替换?甚是麻烦!

啰哩啰唆又双叒叕那么多,我们小碎步快速步入正题。

还要再啰嗦两句(一般上课前你们不都是喜欢哪些啰嗦的老师嘛),资源包是个啥东西我们目前只有一个模糊的印象,可眼见为实心里有个谱总是好的。

资源包就是一个类,一个包含着我们要发布的css和js以及一些依赖包的类,当然他还有一个英文名:Asset Bundles。我们来看一个简单的资源包的定义(其实yii自带的我们一开始就在使用了)。

打开backend\assets目录,找到AppAssets类,我们在该类原有的基础之上补充了几个属性

<?php

namespace backend\assets;

use yii\web\AssetBundle;

/**
 * Main backend application asset bundle.
 */
class AppAsset extends AssetBundle
{
    // public $sourcePath = '@common/widgets/upload';
    public $basePath = '@webroot';
    public $baseUrl = '@web';
    public $css = [
        'css/site.css',
    ];
    public $js = [
    ];
    public $depends = [
        'yii\web\YiiAsset',
        'yii\bootstrap\BootstrapAss

继续阅读

还有75%的精彩内容,购买继续阅读