首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >未找到类“kartik\SideNav\SideNav”

未找到类“kartik\SideNav\SideNav”
EN

Stack Overflow用户
提问于 2016-02-13 17:40:00
回答 1查看 1K关注 0票数 1

我的后端/layout/view/main.php文件如下所示,请告诉我如何使用kartik/yii2 2- widget -sidenav,我已经通过composer安装了这个小部件。我是新来的。请帮帮忙。我不知道我是否在正确的地方使用了代码,或者为什么会出现这个错误,我已经从github页面复制和粘贴了代码。

代码语言:javascript
复制
<?php

/* @var $this \yii\web\View */
/* @var $content string */

use backend\assets\AppAsset;
use yii\helpers\Html;
use yii\bootstrap\Nav;
use yii\bootstrap\NavBar;
use yii\widgets\Breadcrumbs;
use common\widgets\Alert;
//use kartik\widgets\SideNav;
use kartik\sidenav\SideNav;
//use yii\helpers\Url;


AppAsset::register($this);
?>
<?php $this->beginPage() ?>
<!DOCTYPE html>
<html lang="<?= Yii::$app->language ?>">
<head>
<meta charset="<?= Yii::$app->charset ?>">
<meta name="viewport" content="width=device-width, initial-scale=1">
<?= Html::csrfMetaTags() ?>
<title><?= Html::encode($this->title) ?></title>
<?php $this->head() ?>
</head>
<body>
<?php $this->beginBody() ?>
<?= SideNav::widget([
'type' => SideNav::TYPE_DEFAULT,
'heading' => 'Options',
'items' => [
    [
        'url' => '#',
        'label' => 'Home',
        'icon' => 'home'
    ],
    [
        'label' => 'Help',
        'icon' => 'question-sign',
        'items' => [
            ['label' => 'About', 'icon'=>'info-sign', 'url'=>'#'],
            ['label' => 'Contact', 'icon'=>'phone', 'url'=>'#'],
        ],
    ],
    ],
]);

?>       

<div class="wrap">
<?php
NavBar::begin([
    'brandLabel' => 'My Company',
    'brandUrl' => Yii::$app->homeUrl,
    'options' => [
        'class' => 'navbar-inverse navbar-fixed-top',
    ],
]);
$menuItems = [
    ['label' => 'Home', 'url' => ['/site/index']],
];
if (Yii::$app->user->isGuest) {
    $menuItems[] = ['label' => 'Login', 'url' => ['/site/login']];
} else {
    $menuItems[] = [
        'label' => 'Logout (' . Yii::$app->user->identity->username .     ')',
        'url' => ['/site/logout'],
        'linkOptions' => ['data-method' => 'post']
    ];
 }
 echo Nav::widget([
    'options' => ['class' => 'navbar-nav navbar-right'],
    'items' => $menuItems,
 ]);
 NavBar::end();
 ?>

 <div class="container">
    <?= Breadcrumbs::widget([
        'links' => isset($this->params['breadcrumbs']) ?         $this->params['breadcrumbs'] : [],
    ]) ?>
    <?= Alert::widget() ?>
    <?= $content ?>
</div>
</div>

<footer class="footer">
<div class="container">
    <p class="pull-left">&copy; My Company <?= date('Y') ?></p>

    <p class="pull-right"><?= Yii::powered() ?></p>
</div>
</footer>

<?php $this->endBody() ?>
</body>
</html>
<?php $this->endPage() ?>
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-02-13 17:44:27

我觉得奇怪的是,您在后端(内部)有供应商目录。因为我认为您使用的是高级模板,供应商目录应该只在项目内部,然后在相同的前端和后端(而不是在它们内部)。我认为这就是Yii找不到组件SideNav的原因。

我建议您在您的项目中重新安装这个扩展--运行(its) composer --这样,扩展应该在项目的供应商目录中结束。一旦您安装了这个,如果您只安装了SideNav,那么它应该可以工作。

代码语言:javascript
复制
use kartik\sidenav\SideNav;

但是,如果您安装了所有的小部件,那么所有的小部件都应该可以工作。

代码语言:javascript
复制
use kartik\widgets\SideNav;
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/35383119

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档