我想从视图中写入我的模板中的某个区域,也可以从包含的视图中写入第一个视图,但无论我尝试什么都不起作用。我已经尝试过使用@parent和@append,但到目前为止还没有产生我想要的结果。
在我的布局中,我有以下内容:
@include('admin/rules/partials/_form')
@section('scripts)
// javascript #1 here
@stop
在我认为小学时,我有以下内容:
@section('scripts)
// javascript #2 here
@stop
在admin / rules / partials / _form中,我有以下内容:
kernel<<<dims>>>(params)
就像我说我在@section('scripts')之后尝试使用@parent并使用@append而不是@stop但我没有做任何正确的包含两个脚本块。到目前为止我所拥有的最好的是javascript#1被包含一次而javascript#2被包含两次。我该怎么做才能将每个代码块仅附加到脚本区域一次?
答案 0 :(得分:4)
我最终解决了这个问题,我必须做以下事情:
@yield('scripts')
在我认为小学时,我有以下内容:
@include('admin/rules/partials/_form')
@section('scripts)
// javascript #1 here
@stop
在admin / rules / partials / _form中,我有以下内容:
@section('scripts)
@parent
// javascript #2 here
@overwrite
答案 1 :(得分:0)
This answer为我工作。
编辑,但现在没有。
编辑,我更新了以下代码以便工作。我在页面和布局上放置了javascript
部分。
tests.layout.blade.php
<!DOCTYPE html>
<html lang="en">
<head>
<title>
@yield('title') - test
</title>
@yield('head')
</head>
<body>
@yield('content')
@yield('javascript')
</body>
</html>
tests.page.blade.php
@extends('layouts.default')
@section('title', 'Poses')
@section('content')
<div class="container">
<div class="row">
@include('tests.partials.one')
@include('tests.partials.two')
</div>
</div>
@stop
tests.partials.one.blade.php
@section('content')
@parent
<h1>One</h1>
@stop
@section('javascript')
@parent
<script>Scripts from one</script>
@stop
tests.partials.two.blade.php
@section('content')
@parent
<h1>Two</h1>
@stop
@section('javascript')
@parent
<script>Scripts from two</script>
@stop