yii2 nav 小部件子菜单类
Posted
技术标签:
【中文标题】yii2 nav 小部件子菜单类【英文标题】:yii2 nav widget submenu class 【发布时间】:2015-07-22 13:11:33 【问题描述】:我正在使用 adminLTE 主题进行引导,它使用 treeview-menu
类来操作子菜单。
<?=Nav::widget([
'options' => ['class' => 'sidebar-menu treeview'],
'items' => [
['label' => 'Menu 1', 'url' => ['/a/index']],
['label' => 'Menu 2', 'url' => ['/custom-perks/index']],
['label' => 'Submenu', 'items' => [
['label' => 'Action', 'url' => '#'],
['label' => 'Another action', 'url' => '#'],
['label' => 'Something else here', 'url' => '#'],
],
],
],
]);
?>
我尝试使用:
['label' => 'Submenu', 'options' => ['class' => 'treeview-menu'], 'items' =>..
这显然行不通。
我注意到 Menu::widget 有一个 submenuTemplate
,但是当我使用它时,它会停止拾取“活动”。
有没有一种方法可以更改将 adminLTE 调用应用于 treeview-menu 的方式(尝试在 app.js 中将其更改为 dropdown-menu 但没有帮助)或重新分配 UL 子菜单类无需进入供应商代码?
第 65 行:\yii\bootstrap\Dropdown - 函数 init()
【问题讨论】:
【参考方案1】:好的,所以我找到了解决方法 - 改用 Menu 小部件并启用 activateParents 标志:
<?=\yii\widgets\Menu::widget([
'options' => ['class' => 'sidebar-menu treeview'],
'items' => [
['label' => 'Menu 1', 'url' => ['/a/index']],
['label' => 'Menu 2', 'url' => ['/link2/index']],
['label' => 'Submenu',
'url' => ['#'],
'template' => '<a href="url" >label<i class="fa fa-angle-left pull-right"></i></a>',
'items' => [
['label' => 'Action', 'url' => '#'],
['label' => 'Another action', 'url' => '#'],
['label' => 'Something else here', 'url' => '#'],
],
],
],
'submenuTemplate' => "\n<ul class='treeview-menu'>\nitems\n</ul>\n",
'encodeLabels' => false, //allows you to use html in labels
'activateParents' => true, ]); ?>
希望这对其他人也有帮助!
【讨论】:
请注意,您需要在视图文件顶部使用use yii\widgets\Menu;
才能调用Menu
。
非常感谢你帮了我这么多,我一直在寻找年龄以上是关于yii2 nav 小部件子菜单类的主要内容,如果未能解决你的问题,请参考以下文章
scss 来自wp_nav_menu的补充工具栏/小工具子菜单