Laravel @include и @yield blade - PullRequest
       10

Laravel @include и @yield blade

0 голосов
/ 29 мая 2018

В настоящее время я использую шаблонизатор Laravel Blade для генерации страниц.Я использую страницу по умолчанию, чтобы сделать все.Проблема в том, что я не могу получить каждый CSS в головной части.В меню есть пользовательские CSS, которые я в итоге хочу включить в голову.Таким образом, я могу использовать каждую часть индивидуально.Как получилось, что CSS не включен в часть head.blade.php?

Default.blade.php

<!doctype html>
<html>
    <head>
        @include('includes.head')
    </head>
    <body>
        <div class="container">

                <header class="row">
                    @include('includes.menu')
                </header>

                <div id="main" class="row">
                    @yield('content')
                </div>

            </div>
        </body>
    </html>

head.blade.php

<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
@yield('styles')

menu.blade.php

@section('styles')
    <link href="{{ asset('/css/menu.css') }}" rel="stylesheet">
@endsection

login.blade.php

@extends('layouts.default')

@section('styles')
    @parent
    <link href="{{ asset('/css/login.css') }}" rel="stylesheet">
@endsection

@section('content')
--content here--
@stop

В конечном итоге я хочу, чтобы каждый отдельный CSS загружался в заголовочный файл на основе включенных представлений.

1 Ответ

0 голосов
/ 29 мая 2018

Default.blade.php

<!doctype html>
<html>
    <head>
        @section('head')
            @include('includes.head')
        @show
    </head>
    <body>
    <div class="container">

            <header class="row">
                @include('includes.menu')
            </header>

            <div id="main" class="row">
                @yield('content')
            </div>

        </div>
    </body>
</html>

@section ... @show совпадает с @yield, но показывает сразу

head.blade.php

<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">

, затем, если вы хотите добавить больше стилей к голове, сделайте это в menu.blade.php

@section('head')
@parent
    <link href="{{ asset('/css/menu.css') }}" rel="stylesheet">
@endsection

или если вы хотитезаменить все стили сделать это без @parent

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...