2017-07-18 38 views
1

我想設置active類來我的積極路線,我曾嘗試下面的方法,但是它不工作Laravel活動類設置爲導航

navside.blade.php

<ul class="sidebar-menu collapsible collapsible-accordion" data-collapsible="accordion"> 
    <li class="no-padding {{ Request::is('/manager/dashboard') ? 'active' : '' }}"> 
     <a class="waves-effect waves-grey" href="{!! URL::asset('/manager/dashboard')!!}"> 
      <i class="material-icons">settings_input_svideo</i>Dashboard 
     </a> 
    </li> 
    <li class="no-padding {{ Request::is('/manager/orders') ? 'active' : '' }}"> 
     <a class="waves-effect waves-grey" href="{!! URL::asset('/manager/orders')!!}"> 
      <i class="material-icons">shopping_cart</i>Orders 
     </a> 
    </li> 
    <li class="no-padding {{ Request::is('/manager/outlets') ? 'active' : '' }}"> 
     <a class="waves-effect waves-grey" href="{!! URL::asset('/manager/outlets')!!}"> 
      <i class="material-icons dp48">store</i>Outlets 
     </a> 
    </li> 
    <li class="no-padding {{ Request::is('/manager/reports') ? 'active' : '' }}"> 
     <a class="waves-effect waves-grey" href="{!! URL::asset('/manager/reports')!!}"> 
      <i class="material-icons dp48">receipt</i>Reports 
     </a> 
    </li> 
    <li class="no-padding {{ Request::is('/manager/manage') ? 'active' : '' }}"> 
     <a class="waves-effect waves-grey" href="{!! URL::asset('/manager/manage')!!}"> 
      <i class="material-icons dp48">input</i>Manage 
     </a> 
    </li> 
</ul> 

我的路線是

Route::group(['prefix' => 'manager', 'middleware' => ['auth','roles'], 'roles' => 'manager'], function() { 

    Route::get('/dashboard', '[email protected]')->name('dashboard'); 

    Route::get('/orders', '[email protected]')->name('orders'); 
    Route::get('/orders/{order_id}', '[email protected]')->name('orderDetails'); 
    Route::post('/assign_orders', '[email protected]')->name('assignOrder'); 

    Route::get('/outlets', '[email protected]')->name('outlets'); 

    Route::get('/reports', '[email protected]')->name('reports'); 

}); 

我曾嘗試過一些不同的方法,如

1 {{ Request::segment(1) === 'programs' ? 'active' : null }} 

    2 class="@if(Request::url()== url('/home') active @endif" 

但他們din't工作醚

謝謝

回答

3

你可以試試: (Route::current()->getName() == 'routename') ? 'active' : null

你也可以把它的輔助功能,而不是複製粘貼完整的if語句。

+0

那麼這個作品,謝謝你的時間,真的很感激它,以及如何像動態路線'訂單/ {id}' –

+1

他們將有路由名稱以及如果你使用'Route :: resource()'它會是'orders.show',但在你的情況下,它是'orderDetails',你可以用console命令'php artisan route:list'來檢查所有的名字 – Joeri