logicalcrow/menu-sub

v1.0.5 2022-09-24 14:25 UTC

This package is auto-updated.

Last update: 2024-09-24 19:24:13 UTC


README

  • 此包可用于 Laravel 8.0 或更高版本。
  • jetstream 团队要求

安装

composer require logicalcrow/menu-sub

发布

php artisan vendor:publish --provider="Logicalcrow\Menu\MenuSubServiceProvider"

添加到 config/app.php 配置文件中

'providers' => [
    /*
     * Package Service Providers...
     */
    Logicalcrow\Menu\Providers\MenuServiceProvider::class,
],

添加到 Models/User.php 文件中

use Logicalcrow\Menu\Models\Menu;
// add function at end of Models/User.php
public function menus()
{
    return $this->belongsToMany(Menu::class, 'menu_users')->orderByPivot('menu_id');
}

使用

bootstrap 4 示例

@foreach($menus as $menu)
    <li class="menu-item menu-item-submenu {{ Request::is('dashboard/'.$menu->url.'/*') ? 'menu-item-open menu-item-here' : '' }}" aria-haspopup="true" data-menu-toggle="hover">
        <a href="javascript:;" class="menu-link menu-toggle">
            <span class="svg-icon menu-icon">
                <i class="kt-menu__link-icon {{ $menu->ico }}"></i>
            </span>
            <span class="menu-text">{{ $menu->name }}</span>
            <i class="menu-arrow"></i>
        </a>
        @if(isset($menu->menuSubs))
            <div class="menu-submenu">
                <i class="menu-arrow"></i>
                <ul class="menu-subnav">
                    @foreach($menu->menuSubs as $menuSub)
                    <li class="menu-item {{ Request::is('dashboard/'.$menu->url.'/'.$menuSub->url, 'dashboard/'.$menu->url.'/'.$menuSub->url.'/*') ? 'menu-item-active' : '' }}" aria-haspopup="true">
                        <a href="/dashboard/{{ $menu->url }}/{{ $menuSub->url }}" class="menu-link">
                            <i class="menu-bullet menu-bullet-dot">
                                <span></span>
                            </i>
                            <span class="menu-text">{{ $menuSub->name }}</span>
                        </a>
                    </li>
                    @endforeach
                </ul>
            </div>
        @endif
    </li>
@endforeach