有一点大脑放屁。无法弄清楚为什么我的部分不被包含
所以我试图将scripts
部分包含在我的页脚中,但是当我重新加载页面时我什么都没得到。它肯定是被加载的,只是产量不起作用
所以我的视图:
@extends('layouts/form')
@section('scripts')
<script>
alert('It works!');
</script>
@stop
这是布局/表单
@include('layouts/head')
@include('layouts/header')
// html stuff
@include('layouts/footer')
我的页脚:
// footer html
@yield('scripts','')
</body>
</html>
我对章节的理解是否正确?如果scripts
部分不存在,则它只是打印出来。它需要按特定顺序吗?
答案 0 :(得分:1)
根据我对blade template engine
:
<div class="col-xs-12">
@yield('content')
</div>
有效,扩展包含此@yield的文件(在我的情况下为master.blade.php
)的任何内容都会在那里打印出来的内容:
@section('content')
<div class="container-fluid">
@include("order-form")
</div>
@stop
我能想到的唯一另一件事(在@yield('scripts')
完美地完成我的一个项目之后就是结构。为了给你一个想法,这是我的app / views结构:
..
-> forms
-> generic.blade.php
-> loss.blade.php
-> rts.blade.php
-> layouts
-> master.blade.php
index.blade.php
order.blade.php
layouts.master -> @yield('content') -> index.blade.php -> @section('content') -> @include('forms.loss') -> @stop
这应该让关系变得非常清楚......也许这有帮助,我不知道。这很棘手,我觉得它应该适合你的情况。如果有帮助,请告诉我。
答案 1 :(得分:0)
实际上是因为我从一个数据库中加载了一些页面,告诉laravel使用哪个布局,所以脚本部分从来没有在那个视图中