模板中,代码插入指定位置是使用@yield和@section配合以外,还有没有插入默认位置的语法呢?

laravel的模板继承中,如果在被继承的文件中不指定@yield,有没有一个标签表示默认在该位置插入代码,别的文件来继承它时就不用写@section/@endsection,框架就会把当前文件的所有代码插入到被继承文件指定的默认位置。

比如:
视图文件目录结构:
|views
|——layout
|————base.blade.php
|————header.blade.php
|——welcome.blade.php

### base.blade.php
<body>
@include("layout.header")
<main style="padding: 20px">
    @yield("content")
</main>
</body>

我在这儿能不能把@yield换成一个代表 默认 的标签,比如thinkphp 的{__CONTENT__}

然后在welcome.blade.php中只需要使用@extend(‘layout.base’),就不用@section/@endsection了

### welcome.blade.php
@extend('layout.base')
<h1>main标签中内容</h1>
<div>
...
</div>
<style>
...
</style>
<script>
...
</script>
《L03 构架 API 服务器》
你将学到如 RESTFul 设计风格、PostMan 的使用、OAuth 流程,JWT 概念及使用 和 API 开发相关的进阶知识。
《G01 Go 实战入门》
从零开始带你一步步开发一个 Go 博客项目,让你在最短的时间内学会使用 Go 进行编码。项目结构很大程度上参考了 Laravel。
讨论数量: 2
陈先生

section 和 yield 都是用来做占位的,如果没有占位符,程序不知道你要放在哪里。如果你真的想用 tp 的那套格式,你可以去做自定义组件来完成。 Laravel 宁愿不做,也不会拿出 {__CONTENT__} 这种蹩脚实现。

1个月前 评论
Mutoulee

这样的话不是又跟@inclide一样了吗

1个月前 评论

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!