我不明白为什么Laravel模板有两个互补但也可能相互矛盾的指令。在构建视图时,它只是一个强大的问题,还是创建更多选项,还是其他什么?
从官方文档中,容器使用@sections
语句定义@yield
和“拉”其他视图片段的内容......对吗?
<!-- Stored in resources/views/layouts/app.blade.php -->
<html>
<head>
<title>App Name - @yield('title')</title>
</head>
<body>
@section('sidebar')
This is the master sidebar.
@show
<div class="container">
@yield('content')
</div>
</body>
</html>
然后使用@extends
语句在主布局中使用“wrap me”来使用子组件。
<!-- Stored in resources/views/child.blade.php -->
@extends('layouts.app')
@section('title', 'Page Title')
这不可避免地增加了他们有时相互矛盾的风险吗?
答案 0 :(得分:0)
好吧,@extends
仅用于说 - 使用此模板作为基础模型,@yield
说 - 在这里你应该把部分的内容放在给定的名字上。
正如您在此处所示,您可以使用大量HTML标记创建基本模板,但某些部分是动态的,因此您可以在此处使用@yield
,然后您可以创建多个子模板,这些模板将为这些模板带来一些真正的价值地点 - 所有这些模板都将扩展父模板,并定义应该替换每个@yield