Blade 模板

最后更新于:2022-04-01 15:10:05

Blade 是 Laravel 所提供的一个简单却又非常强大的模板引擎。不像控制器页面布局,Blade 是使用 `模板继承(template inheritance)` 和 `区块(sections)`。所有的 Blade 模板后缀名都要命名为 `.blade.php`。 定义一个 Blade 页面布局 ~~~ <!-- Stored in resources/views/layouts/master.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> ~~~ 在视图模板中使用 Blade 页面布局 ~~~ @extends('layouts.master') @section('title', 'Page Title') @section('sidebar') @@parent <p>This is appended to the master sidebar.</p> @stop @section('content') <p>This is my body content.</p> @stop ~~~ 请注意 如果视图 `继承(extend)` 了一个 Blade 页面布局会将页面布局中定义的区块用视图的所定义的区块重写。如果想要将页面布局中的区块内容也能在继承此布局的视图中呈现,那就要在区块中使用 `@@parent` 语法指令,通过这种方式可以把内容附加到页面布局中,我们会在侧边栏区块或者页脚区块看到类似的使用。 有时候,如您不确定这个区块内容有没有被定义,您可能会想要传一个默认的值给 `@yield`。您可以传入第二个参数作为默认值给 `@yield`: ~~~ @yield('section', 'Default Content') ~~~
';