Laravel Blade模板继承和复用是提高代码可维护性和减少重复代码的重要方法。在Laravel中,我们可以使用Blade的@extends
和@section
指令来实现模板继承和复用。
模板继承允许我们创建一个基本布局文件(通常称为layouts.blade.php
),其中包含所有页面共享的结构和元素。然后,我们可以创建其他Blade模板文件,它们扩展基本布局并覆盖或添加特定于页面的内容。
首先,在resources/views/layouts
目录下创建一个基本布局文件layouts.blade.php
:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>@yield('title', 'Default Title')</title>
</head>
<body>
<header>
@include('partials.header')
</header>
<main>
@yield('content')
</main>
<footer>
@include('partials.footer')
</footer>
</body>
</html>
接下来,创建一个扩展基本布局的页面模板文件,例如resources/views/pages/home.blade.php
:
@extends('layouts.blade.php')
@section('title', 'Home Page')
@section('content')
<h1>Welcome to the Home Page</h1>
<p>This is the home page content.</p>
@endsection
在这个例子中,home.blade.php
扩展了layouts.blade.php
并覆盖了title
和content
部分。
模板复用是指在一个模板文件中定义一个可重用的代码片段,然后在其他模板文件中引用它。在Laravel中,我们可以使用@include
指令来实现模板复用。
首先,在resources/views/partials
目录下创建一个包含可重用代码片段的文件,例如header.blade.php
:
<header>
<nav>
<ul>
<li><a href="/">Home</a></li>
<li><a href="/about">About</a></li>
<li><a href="/contact">Contact</a></li>
</ul>
</nav>
</header>
然后,在其他模板文件中引用这个可重用的代码片段,例如在layouts.blade.php
中:
<header>
@include('partials.header')
</header>
这样,我们就可以在多个模板文件中复用header.blade.php
中的代码,而无需在每个页面中重复编写相同的代码。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。