如何在yii2中使用bower安装的小部件

时间:2015-11-25 04:47:38

标签: yii2 yii2-advanced-app yii2-basic-app

大家好,这可能是一个愚蠢的问题,但我不知道如何处理这就是为什么我在这里提问。

我想在yii2项目中使用bootstrap-calendar。我使用bower的帮助在项目页面上给出的命令安装了所有必要的文件。

自动列出依赖关系,所有jquerycss文件都安装在vendor文件夹中。那么现在如何在yii2视图文件中使用该窗口小部件?

我是否像使用其他jscss文件一样使用它?

我的意思是使用AppAsset或手动包含使用插件所需的文件,如下所示?

<script type="text/javascript" src="../../vendor/jquery-1.9.1.js"></script>
<script type="text/javascript" src="../../vendor/underscore-min.js"></script>
<script type="text/javascript" src="../../calendar.js"></script>

我对此很困惑。

1 个答案:

答案 0 :(得分:3)

您不能直接使用bower资产。

您可能已经注意到,它们安装在您的Web根目录之外的vendor文件夹中。将某些文件从vendor文件夹复制到可通过Web访问的web/assets文件夹,称为资产发布。它是使用yii的AssetBundle类实现的。 AssetBundle还处理资产注册,这是在HTML文档中创建scriptstyle代码的过程。

资产发布的典型示例是BootstrapAsset类:

class BootstrapAsset extends AssetBundle
{
    public $sourcePath = '@bower/bootstrap/dist';
    public $css = [
        'css/bootstrap.css',
    ];
}

此配置指示yii将dist目录的内容发布到临时的Web可访问位置。此外,当在视图(BootstrapAsset::register($this))中注册此资产时,将创建包含style的相应bootstrap.css标记。

此主题为extensively covered in the guide

然而,最有可能是某人已经采取了所有这些步骤,并且已经创建了相应的资产包和可能的小部件。在您的特定情况下,请考虑这两个日期选择器小部件: