问题描述
是否可以让每个视图都扩展我的主布局,而不必将 @extends('layout') 和 @section('content') 放在顶部的每个文件中?例如通过使用提供者?我是 Laravel 和 Blade 的新手。
解决方法
实际上使用扩展更好,但如果您想摆脱@extends 或@section,您始终可以从控制器返回主布局并将视图作为参数传递给主布局。
mainlayout.blade.php:
//replace yield directive with content variable
// @yield('content')
{!!$content!!}
在控制器中:
//return view('test');
$content=view('test')->render();
return view('mainlayout',['content'=>$content]);
现在在测试视图中您不需要@extends 和@section。