Laravel 刀片“request()->is()”语法问题
Posted
技术标签:
【中文标题】Laravel 刀片“request()->is()”语法问题【英文标题】:Laravel blade "request()->is()" syntax issue 【发布时间】:2021-12-17 00:41:31 【问题描述】:我正在使用以下代码使链接显示为活动状态。
<a href="/profile/ $user->id " class=" request()->is('/profile/'.$user->id) ? 'text-blue-500' : '' ">View Profile</a>
它以前适用于非动态链接。但是现在当我在 url 中传递数据时,它已经停止工作。我试过 dd-ing request()->is() 部分,尽管 url 和模式匹配,但它返回 false。
【问题讨论】:
您可以与当前路线比较:url()->current()
。或使用is()
与不带参数的路由名称。
你在使用命名路由吗??
我还建议您使用 route()
帮助器来回显 href 而不是硬编码它。这样,如果您将路由更改为例如 /user/profile,所有链接也会更改。
【参考方案1】:
您可以检查路线名称。
试试这个:
<a href="/profile/ $user->id " class=" Route::currentRouteName() == 'your.route.name' ? 'text-blue-500' : '' ">View Profile</a>
【讨论】:
使用路由名称,当前的->is()
将是一个更短的解决方案。以上是关于Laravel 刀片“request()->is()”语法问题的主要内容,如果未能解决你的问题,请参考以下文章