检查子菜单项中的当前 url
check current url in sub menu items
我想将自定义活动 class 添加到具有当前路线的侧边菜单。我知道我可以通过 url()->current()
获得当前 url 并将其与 route('something')
进行比较,但我的挑战是当我想在 [=22] 上同时获得活动 class =]和child选择a child项目时。
我的没有任何 children 的菜单项代码是:
<li class=" @if(url()->current()==route('home')) custom_active_menu @endif ">
您可以将 if 与 parent 的多个 or 语句一起使用。我通常使用 Request
class,这样我就可以使用仅带有星号而不是多个 or 语句的模式。但是,您可以根据需要使用任何东西。使用 Request
class
的例子
<li class="{{ \Request::is('menu/*') || \Request::is('menu') ? 'active' : '' }}">
<a href="#">
<i class="metismenu-icon pe-7s-bandaid"></i>
Menu
<i class="metismenu-state-icon pe-7s-angle-down caret-left"></i>
</a>
<ul>
<li>
<a href="{{ route('menu.index') }}" class="{{ \Request::is('menu') ? 'active' : '' }}">
<i class="metismenu-icon"></i>
Menu Index
</a>
</li>
<li>
<a href="{{ route('menu.create') }}" class="{{ \Request::is('menu/create') ? 'active' : '' }}">
<i class="metismenu-icon"></i>
Menu Create
</a>
</li>
</ul>
</li>
这里我正在使用 \Request::is('menu/*')
检查请求 url 中的模式,这意味着如果请求 url 匹配任何开始的模式,则此 li
将始终处于活动状态通过 menu/
点赞 menu/create
或 menu/1/edit
。使用 or 语句我正在检查确切的请求 url menu
.
和child,只是一个简单的if语句。如果当前 url 与菜单匹配 url 添加 class active.
以你的例子,我会为 parent
做类似的事情
<li class=" @if (url()->current() == route('home') || url()->current() == route('another_route')) custom_active_menu @endif ">
并且 child 只需一个 if
<li class=" @if (url()->current() == route('home')) custom_active_menu @endif ">
我想将自定义活动 class 添加到具有当前路线的侧边菜单。我知道我可以通过 url()->current()
获得当前 url 并将其与 route('something')
进行比较,但我的挑战是当我想在 [=22] 上同时获得活动 class =]和child选择a child项目时。
我的没有任何 children 的菜单项代码是:
<li class=" @if(url()->current()==route('home')) custom_active_menu @endif ">
您可以将 if 与 parent 的多个 or 语句一起使用。我通常使用 Request
class,这样我就可以使用仅带有星号而不是多个 or 语句的模式。但是,您可以根据需要使用任何东西。使用 Request
class
<li class="{{ \Request::is('menu/*') || \Request::is('menu') ? 'active' : '' }}">
<a href="#">
<i class="metismenu-icon pe-7s-bandaid"></i>
Menu
<i class="metismenu-state-icon pe-7s-angle-down caret-left"></i>
</a>
<ul>
<li>
<a href="{{ route('menu.index') }}" class="{{ \Request::is('menu') ? 'active' : '' }}">
<i class="metismenu-icon"></i>
Menu Index
</a>
</li>
<li>
<a href="{{ route('menu.create') }}" class="{{ \Request::is('menu/create') ? 'active' : '' }}">
<i class="metismenu-icon"></i>
Menu Create
</a>
</li>
</ul>
</li>
这里我正在使用 \Request::is('menu/*')
检查请求 url 中的模式,这意味着如果请求 url 匹配任何开始的模式,则此 li
将始终处于活动状态通过 menu/
点赞 menu/create
或 menu/1/edit
。使用 or 语句我正在检查确切的请求 url menu
.
和child,只是一个简单的if语句。如果当前 url 与菜单匹配 url 添加 class active.
以你的例子,我会为 parent
做类似的事情<li class=" @if (url()->current() == route('home') || url()->current() == route('another_route')) custom_active_menu @endif ">
并且 child 只需一个 if
<li class=" @if (url()->current() == route('home')) custom_active_menu @endif ">