我的master.blade.php文件中有面包屑,我希望面包屑可以在任何地方使用但是homepage.blade.php。
现在这就是我在其他页面中添加链接到面包屑的方式,例如"关于"。 about.blade.php:
@section('breadcrumbs')
@parent
<li class="last-breadcrumb">
About
</li>
@stop
在master.blade.php中:
<div class="container">
<div class="breadcrumb-container">
<ul class="breadcrumb">
@section('breadcrumbs')
<li>
<a href="/homepage/" title="homepage">
homepage
</a>
</li>
@show
</ul>
</div>
</div>
但是当我使用homepage.blade时,我根本不想显示面包屑代码。
复制每个about.blade / X.blade文件的代码似乎是一个坏主意..
答案 0 :(得分:1)
您可以在控制器中设置一个使用make / redirect传递的值,如$data['breadcrumb'] = true
,并将条带符号包装在条件中。这种系统也适用于错误和成功消息,因为您可以从控制器发送内容。然后你会发送一个数值而不是true
的数组。
刀片模板
<div class="container">
@if($breadcrumb)
<div class="breadcrumb-container">
<ul class="breadcrumb">
@section('breadcrumbs')
<li>
<a href="/homepage/" title="homepage">
homepage
</a>
</li>
@show
</ul>
</div>
@endif
</div>
答案 1 :(得分:1)
您可以检查URI以查看是否要显示它。你的观点中的逻辑通常是不受欢迎的,但这是我能想到的最简单的方法。
<div class="container">
<div class="breadcrumb-container">
<ul class="breadcrumb">
@if(Route::uri() == '/')
<li class="last-breadcrumb">
About
</li>
@endif
<li>
<a href="/homepage/" title="homepage">
homepage
</a>
</li>
@show
</ul>
</div>
</div>
根据您用于主页的URI,您可能需要调整条件。
答案 2 :(得分:1)
如果您在主模板中使用@yield
,那么只有在定义了部分后才会显示内容。 @content
要求始终定义该部分。