如何在Laravel 5中使用partials?

时间:2018-01-10 15:24:05

标签: php laravel-5 blade

今天我们在学校开设了Laravel 5课程。所以我开始在网上搜索重复使用的东西。我已经阅读了有关部分,组件和屈服的一些内容,但我仍然不太了解它。

在我的resources/views文件夹中,我有一个名为home.blade.php的文件。 它包含此导航栏:

<nav class="navbar navbar-inverse">
  <div class="container-fluid">
    <div class="navbar-header">
      <button type="button" class="navbar-toggle" data-toggle="collapse" data-target="#myNavbar">
        <span class="icon-bar"></span>
        <span class="icon-bar"></span>
        <span class="icon-bar"></span>
      </button>
      <a class="navbar-brand" href="#">Logo</a>
    </div>
    <div class="collapse navbar-collapse" id="myNavbar">
      <ul class="nav navbar-nav">
        <li class="active"><a href="#">Home</a></li>
        <li><a href="/about">About</a></li>
        <li><a href="/contact">Contact</a></li>
      </ul>
      <ul class="nav navbar-nav navbar-right">
        <li><a href="/control-panel"><span class="glyphicon glyphicon-log-in"></span> Login</a></li>
      </ul>
    </div>
  </div>
</nav>

现在我的about.blade.php我想使用相同的代码而不需要复制和粘贴。因此,如果我进行了更改,它会立即更改两个导航栏而不会更改它2次。

有人可以向我解释一下如何在没有复制和粘贴的情况下重新使用此导航栏吗?

先谢谢,Sylent。

1 个答案:

答案 0 :(得分:6)

创建一个新文件夹并将其命名为partials。在那里你可以将导航,页眉和页脚都作为单独的刀片文件。

然后(通常)您将创建一个包含结构的布局刀片,并包含导航,页眉和页脚。

然后,您将为home和about扩展该布局,并通过创建一个名为content的部分来封装每个home和about的任何内容。

然后您将在布局中产生内容。

https://laravel.com/docs/5.5/blade

<?php

$filename = $_GET['filename'];
$file = '/storage/webfiles/Customer Service/Invoice/'.$filename;

header('Content-type: application/pdf');
header('Content-Disposition: inline; filename="' . $filename . '"');
header('Content-Transfer-Encoding: binary');
header('Content-Length: ' . filesize($file));
header('Accept-Ranges: bytes');

@readfile($file);