Bootstrap   发布时间:2022-04-18  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了symfony – KnpMenuBundle不使用Bootstrap 4导航栏大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我目前正在制作一个包含Symfony包的菜单:KnpMenuBundle.我使用Bootstrap 4作为样式表.

@H_502_8@

Bootstrap 4要求导航栏中的每个列表项都具有“nav-item”类:@H_502_8@

@H_502_8@

<li class="nav-item active"> <-- this
    <a class="nav-link" href="#">Home <span class="sr-only">(current)</span></a>
</li>

我似乎无法弄清楚如何使用KnpMenuBundle将类“nav-item”添加到列表项.目前我在加载页面时看到了这个:
navbar result@H_502_8@

这是我在src / AppBundle / Menu中的Builder类:@H_502_8@

@H_502_8@

namespace AppBundle\Menu;


use Knp\Menu\MenuFactory;

class Builder
{
    public function mainMenu(MenuFactory $factory,array $optioins)
    {
        $menu = $factory->createItem('root');
        $menu->setChildrenAttribute('class','navbar-nav mr-auto');
        $menu->addChild('Home',['route' => 'homepage']);
        $menu->setChildrenAttributes(['class' => 'nav-item']);
        return $menu;
    }
}

我在base.html.twig中的代码生成菜单:@H_502_8@

@H_502_8@

{{ knp_menu_render('AppBundle:Builder:mainMenu',{'currentClass': 'active'}) }}

我该怎么做才能让它发挥作用?@H_502_8@

解决方法

我这样做是为了让顶级正确.但是还没有计算出下拉菜单.

@H_502_8@

@H_502_8@

$menu->setChildrenAttribute('class','navbar-nav');
// menu items
foreach ($menu as $child) {
    $child->setLinkAttribute('class','nav-link')
        ->setAttribute('class','nav-item');
}

大佬总结

以上是大佬教程为你收集整理的symfony – KnpMenuBundle不使用Bootstrap 4导航栏全部内容,希望文章能够帮你解决symfony – KnpMenuBundle不使用Bootstrap 4导航栏所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。