首页 > 解决方案 > 询问 laravel 刀片模板中的子视图

问题描述


我想问一下laravel Blade中的子视图,具体情况如下。
页面视图

我希望当点击组件 1(2) 时,@section('sub-view') 中的子刀片文件的内容将呈现在 @yield('sub-view') 中。这是父刀片文件的代码。
父刀片文件

@extends('layouts.default')
@section('content')
<div class="row">
    <div class="col-4">
        <ul class="list-unstyled">
            <li>
                <a href="{{url('/projects/comp1')}}">Component 1</a>
            </li>
            <li>
                <a href="{{url('/projects/comp2')}}">Component 2</a>
            </li>
        </ul>
    </div>
    <div class="col-8">
        @yield('sub-view')
    </div>
</div>
@endsection

以及子刀片文件的代码。
子刀片文件

@section('sub-view')
<p>This is component 1</p>
@endsection

和我的路线文件
路线文件

Route::group(['prefix' => 'projects'], function () {
    Route::get('', function () {
        return View::make('pages.project.projects');
    });
    Route::get('comp1', function () {
        return view('pages.project.comp1');
    });
    Route::get('comp2', function () {
        return view('pages.project.comp2');
    });
});

有人可以帮我解决这个问题吗?
谢谢

标签: laravel

解决方案


我认为您需要添加一个

@extends('parent') // or whatever your parent view is called

到您的子视图文件。

欲了解更多信息:

https://laravel.com/docs/5.7/blade#template-inheritance


推荐阅读