如何在Laravel 5中使用partials?

Syl*_*ent 2 php blade laravel-5

今天我们在学校开始了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>
Run Code Online (Sandbox Code Playgroud)

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

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

先谢谢,Sylent.

con*_*ood 6

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

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

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

然后,您将在布局中生成内容.

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

#navigation /resources/views/partials/navigation.blade.php
<nav>
...
</nav>

#header /resources/views/partials/header.blade.php
<header>
...
</header>


#footer /resources/views/partials/navigation.blade.php
<footer>
...
</footer>

#layout /resources/views/layouts/layout.blade.php
@include('partials.header')

@include('partials.navigation')

    <div class="main-content">
        @yield('content')
    </div>

@include('partials.footer')

#home /resources/views/page/home.blade.php
@extends('theme.layouts.layout')

@section('content')
    <p>Anything within home</p>
@endsection

#about /resources/views/page/about.blade.php
@extends('theme.layouts.layout')

@section('content')
    <p>Anything within about</p>
@endsection
Run Code Online (Sandbox Code Playgroud)