Php 如何在具有Metronic主题的Laravel 5.4中激活菜单

Php 如何在具有Metronic主题的Laravel 5.4中激活菜单,php,laravel,laravel-5.4,Php,Laravel,Laravel 5.4,我正在使用Metronic主题在Laravel5.4中开发一个Web应用程序 开发管理部分和我使用四种不同的文件集成主题,如 页眉、侧边栏、页脚和main.blade.php文件 <!DOCTYPE html> <html lang="en"> @include('admin.Includes.head') <body class="page-boxed page-header-fixed page-container-bg-solid page-

我正在使用Metronic主题在Laravel5.4中开发一个Web应用程序

开发管理部分和我使用四种不同的文件集成主题,如

页眉、侧边栏、页脚和main.blade.php文件

<!DOCTYPE html>
<html lang="en">
    @include('admin.Includes.head')

    <body class="page-boxed page-header-fixed page-container-bg-solid page-sidebar-closed-hide-logo ">
            @include('admin.Includes.header')


        <div class="container">
            <!-- BEGIN CONTAINER -->
            <div class="page-container">
               @include('admin.Includes.sidebar')

                <!-- BEGIN CONTENT -->
                <div class="page-content-wrapper">
                    <div class="page-content">

                     @yield('content')

                    </div>
                </div>
            </div>
            @include('admin.Includes.footer')

        </div>
    </body>
</html>

@包括('admin.Includes.head')
@include('admin.Includes.header')
@include('admin.Includes.sidebar')
@产量(‘含量’)
@include('admin.Includes.footer')
现在我想激活激活的侧栏菜单

假设我在管理仪表板,那么仪表板菜单应该是活动的

激活它

Metronic主题使用课堂活动我在列表中使用的是直接课堂活动

跟随,但在所有路线中始终处于活动状态

 <li class="start active" >
                <a href="{{  url('/admin/dashboard') }}">
                <i class="icon-home"></i>
                <span class="title">Dashboard</span>
                </a>
            </li>

  • 如何根据路由激活菜单。

    **您可以请求当前url并与页面url匹配**

    <li class="start <?php if(Request::url() === 'your url here') echo 'active'; endif ?> >
    <a href="{{  url('/admin/dashboard') }}"> 
    <i class="icon-home"></i> <span class="title">Dashboard</span> </a> 
    </li>
    

    检查您所在的路线是否符合条件

    例如:

    @if ($route == 'App\Http\Controllers\AgreementController@archived')
        <h1>Archived Agreements</h1>
    @else
        <h1>Agreements</h1>
    @endif
    
    @if($route=='App\Http\Controllers)\AgreementController@archived')
    存档协议
    @否则
    协议
    @恩迪夫
    
    您可以从控制器传递活动变量

    UserController.php

    /**
     * Constructor.
     */
    public function __construct() {
        view()->share('activeUser', TRUE);
    }
    
    看法


  • 我使用两个步骤激活了当前菜单

    步骤1:->

    <li class="@if($page_name_active=='admin/dashboard')active @endif">
        <a href="{{  url('/admin/dashboard') }}">
           <i class="icon-home"></i>
            <span class="title">Dashboard</span>
        </a>
    </li>
    
    我在控制器中添加了共享功能

                public function __construct()
                {
                    View::share(['page_name_active'=> 'admin/dashboard']);       
                }
    
    步骤2:->

    <li class="@if($page_name_active=='admin/dashboard')active @endif">
        <a href="{{  url('/admin/dashboard') }}">
           <i class="icon-home"></i>
            <span class="title">Dashboard</span>
        </a>
    </li>
    

  • 您是否创建了命名路由#fairy no我的路由文件类似于route::get('/dashboard',function(){/$exitCode=Artisan::call('cache:clear');$users[]=Auth::user();$users[]=Auth::guard()->user();/dd('users);return view('admin.home');}->name('home');设置一个条件,如果当前路由和您的路由匹配,则使菜单处于活动状态,否则您可以使用以下命令激活它:
  • @PankajMakwana我知道这个解决方案,但如果可能的话,我想使用laravel的标准