yii2导航小部件子菜单类

时间:2015-05-11 21:08:43

标签: css twitter-bootstrap themes yii2 nav

我使用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,但是当我使用它时它会停止拾取&#34; active&#34;。

有没有办法可以改变adminLTE调用应用于treeview-menu的方式(尝试将其在app.js中更改为下拉菜单,但没有帮助)或重新分配UL子菜单类没有进入供应商代码?

  

第65行:\ yii \ bootstrap \ Dropdown - 函数init()

2 个答案:

答案 0 :(得分:22)

好的,我找到了一个解决方法 - 改用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'>\n{items}\n</ul>\n",
'encodeLabels' => false, //allows you to use html in labels
'activateParents' => true,   ]);  ?>

希望这对其他人也有帮助!

答案 1 :(得分:-1)

['label' => 'Menu 1', 'url' => ['/a/index'],'options' => ['class' => 'treeview-menu']],