osaris-uk/navigation

此包的最新版本(1.4)没有可用的许可信息。

Laravel 动态导航包

1.4 2023-10-20 07:09 UTC

This package is auto-updated.

Last update: 2024-09-20 08:57:58 UTC


README

使用方法

运行迁移后,您需要使用以下命令发布配置文件:

php artisan vendor:publish --provider="OsarisUk\Navigation\NavigationServiceProvider" --tag="config"

配置

在配置中,您可以定义要设置多少个导航以及您希望它们可用哪些视图。您还可以在同一视图中提供多个导航。键是您希望导航可用的视图,值用于分组导航。

    'navigations' => [
        '_layouts.partials.navigation' => 'main',
        'admin._layouts.partials.navigation' => [
            'admin',
            'admin_shortcuts'
        ],
    ],

Blade 实现

以下是一个简单的 blade 实现示例

    @foreach($navItems as $navItem)
    	@continue($navItem->realm !== 'admin') <!-- Select only 'admin' nav items where more than one group passed to the view. -->
    	
        @if (count($navItem['children']))
            <li class="has-child">
                <a href="{{ $navItem->route ? route($navItem->route) : '' }}{{ $navItem->target }}">{{ $navItem->title }}</a>
                <div class="dropdown left-indent">
                    <ul class="dropdown-items">
                        @foreach($navItem['children'] as $child)
                            <li>
                                <a href="{{ $child->route ? route($child->route) : '' }}{{ $child->target }}">{{ $child->title }}</a>
                            </li>
                        @endforeach
                    </ul>
                </div>
            </li>
        @else
            <li>
                <a href="{{ $navItem->route ? route($navItem->route) : '' }}{{ $navItem->target }}">{{ $navItem->title }}</a>
            </li>
        @endif
    @endforeach