我正在使用 adminLTE 主题进行 Bootstrap ,它使用 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 子菜单类不进入供应商代码?
Line 65: \yii\bootstrap\Dropdown - function init()
最佳答案
好的,所以我找到了一个变通办法——改用菜单小部件并启用 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, ]); ?>
希望这对其他人也有帮助!
关于css - yii2 导航小部件子菜单类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30177703/