我是Laravel的新用户,来自手工艺cms。在我的主页上,我希望导航是透明的并且在所有其他页面上都具有黑色背景。
为此,我在首页标题中添加了一个名为header-home的类。我设法将此类添加到我编写的布局文件中的首页中:
<header {% if craft.request.lastSegment == "" %}class="header-home" {% endif %}>
我知道我可以为主页创建一个不同的layout.blade.php文件,但是当我想根据用户所在的页面或URL添加类或元素时,还会有其他实例。
预先感谢, 杰米
答案 0 :(得分:3)
您可以从控制器发送课程:
public function myAction
{
...
return view('home', ['layoutClass'=>'dark']);
}
<header class="{{ isset($layoutClass) ? $layoutClass:'') }} />
或者您可以在视图中匹配路线:
<header class="{{ (\Request::route()->getName() == 'myRoute') ? 'dark':'') }} />
答案 1 :(得分:0)
我发现对我来说最好的方法是在Blade中使用if语句并检查路由,以下是我的操作方法:
@if (\Request::is('/'))
<img class="nav-logo" src="img/logo-light.svg">
@else
<img class="nav-logo" src="img/logo-dark.svg">
@endif