Yield函数不会在其他文件中加载特定部分。
路线
Route::get('/', function () {
return view('add-listing');
});
添加-listing.blade.php
@extends('layout')
@section('body')
This is add-listing page
@stop
header.blade.php
@extends('layout')
@section('header')
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1, user-scalable=no">
<title>Find Do Responsive Directory Template</title>
<link rel="stylesheet" type="text/css" href="css/master.css">
<link rel="stylesheet" type="text/css" href="css/color-green.css">
<link rel="stylesheet" type="text/css" href="css/app.css">
<link rel="shortcut icon" href="images/short_icon.png">
@stop
layout.blade.php
<!DOCTYPE html>
<html lang="en">
<head>
@yield('header')
</head>
<body>
@yield('body')
</body>
当我运行时,只加载@section('body')
内容。它没有加载@section('header')
。那是为什么?
答案 0 :(得分:1)
您可以在布局中使用@include('header')
:
<!DOCTYPE html>
<html lang="en">
<head>
@include('header')
</head>
<body>
@yield('body')
</body>
header.blade.php :
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1, user-scalable=no">
<title>Find Do Responsive Directory Template</title>
<link rel="stylesheet" type="text/css" href="css/master.css">
<link rel="stylesheet" type="text/css" href="css/color-green.css">
<link rel="stylesheet" type="text/css" href="css/app.css">
<link rel="shortcut icon" href="images/short_icon.png">
答案 1 :(得分:0)
在这个示例中,您调用add-listing.blade.php,在此文件中,您只是调用layout.blade,因此您的刀片不会调用header.blade,只需为get header内容准备一个部分,然后你就不要# 39; t在你的流程中调用header.blade。
收益率是一个可以按部分设置的变量:
@yield(&#39;标题&#39;)~echo $ header
@section(&#39;头&#39)
标头值在这里
@endsection
所以$ header =标头值就在这里。