Class 'kartik\sidenav\SideNav' 未找到
Class 'kartik\sidenav\SideNav' not found
我的backend/layout/view/main.php文件如下
请告诉我如何使用kartik-v/yii2-widget-sidenav
我已经通过作曲家安装了这个小部件。我是 Yii 的新手。请帮忙。
我不确定我是否在正确的地方使用了代码,或者为什么会出现此错误 coming.I已从 github 页面复制并粘贴代码。
<?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">© My Company <?= date('Y') ?></p>
<p class="pull-right"><?= Yii::powered() ?></p>
</div>
</footer>
<?php $this->endBody() ?>
</body>
</html>
<?php $this->endPage() ?>
我觉得你在后端(内部)有供应商目录很奇怪。因为我认为你使用的是高级模板,供应商目录应该只在你的项目内部,然后在前端和后端的同一级别(而不是在它们内部)。我想这就是 Yii 找不到组件 SideNav 的原因..
我建议您在项目中通过 b 运行 (its) composer 重新安装此扩展,这样扩展应该最终位于项目的供应商目录中..
一旦你安装了它,如果你只安装 SideNav 那么它应该可以工作..
use kartik\sidenav\SideNav;
但是如果你安装了所有的小部件应该可以工作
use kartik\widgets\SideNav;
我的backend/layout/view/main.php文件如下 请告诉我如何使用kartik-v/yii2-widget-sidenav 我已经通过作曲家安装了这个小部件。我是 Yii 的新手。请帮忙。 我不确定我是否在正确的地方使用了代码,或者为什么会出现此错误 coming.I已从 github 页面复制并粘贴代码。
<?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">© My Company <?= date('Y') ?></p>
<p class="pull-right"><?= Yii::powered() ?></p>
</div>
</footer>
<?php $this->endBody() ?>
</body>
</html>
<?php $this->endPage() ?>
我觉得你在后端(内部)有供应商目录很奇怪。因为我认为你使用的是高级模板,供应商目录应该只在你的项目内部,然后在前端和后端的同一级别(而不是在它们内部)。我想这就是 Yii 找不到组件 SideNav 的原因..
我建议您在项目中通过 b 运行 (its) composer 重新安装此扩展,这样扩展应该最终位于项目的供应商目录中.. 一旦你安装了它,如果你只安装 SideNav 那么它应该可以工作..
use kartik\sidenav\SideNav;
但是如果你安装了所有的小部件应该可以工作
use kartik\widgets\SideNav;