Laravel刀片没有显示内容

时间:2016-12-03 15:09:52

标签: php laravel blade

我在yieldblade个文件中尝试index.blade.php,但它无效。

这是我的<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html lang="en"> <head> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width, initial-scale=1"> <meta name="token" content="{{ csrf_token() }}"> <title>Forum</title> <link href="https://fonts.googleapis.com/css?family=Lato:100,200,300,400" rel="stylesheet" type="text/css"> <link href='https://fonts.googleapis.com/css?family=Roboto:400,500,700' rel='stylesheet' type='text/css'> <link href="https://fonts.googleapis.com/icon?family=Material+Icons" rel="stylesheet"> <link href="/css/bulma.css" rel='stylesheet' type='text/css'> <link href="/css/all.css" rel='stylesheet' type='text/css'> </head> <body> <div id="app"> @include('shared.menu.menu') @yield('content') </div> <script src="/js/app.js"></script> </body> </html>

login.blade.php

这是我的@extends('index') @section('content') @yield('shared.bar.bar') @stop

@yield('shared.bar.bar')

此时导航栏正在显示。但酒吧不是!当我用test替换test时,会出现shared/bar/bar.blade.php。这是@section('bar') <section class="hero is-primary"> <div class="hero-body"> <div class="container"> <h1 class="title"> test </h1> <h2 class="subtitle"> test </h2> </div> </div> </section> @stop

title

我做错了什么?是否也可以将变量传递给条形码?我可以在每个页面上显示另一个subtitle@section('bar') <section class="hero is-primary"> <div class="hero-body"> <div class="container"> <h1 class="title"> {{ $title }} </h1> <h2 class="subtitle"> {{ $subtitle }} </h2> </div> </div> </section> @stop 吗?

- 编辑 -

    <style> 
         * {
  padding: 0;
  margin: 0;
  box-sizing: border-box;
}

#res_img {
  background: url("https://s15.postimg.org/ve2qzi01n/image_slider_1.jpg");
  width: 100%;
  height: 500px;
  background-repeat: no-repeat;
  background-size: 100% 100%;
  background-position: center;
  border: 1px solid red;
}

@media screen and (min-width:300px) and (max-width:500px) {
  #res_img {
    width: 100%;
    height: 200px;
  }
}

    </style>

<div id="res_img">
</div>

1 个答案:

答案 0 :(得分:1)

如果您显示所有代码,看起来您的收益率

@yield('shared.bar.bar')

你的部分

@section('bar')

什么时候应该

@section('shared.bar.bar')

或者您应该将收益率更改为

@yield('bar')

由于@yield@section只是字符串,因此与@include等文件无关。

看起来这个文件也错了:

@extends('index')

@section('content')
    @yield('shared.bar.bar')
@stop

@yield是你应该只在你的主布局文件中使用的东西,因为它可能会变得混乱和困难,并且更难以解决发生的事情。所以,除非你有一个部分&#39; shared.bar.bar&#39;要填写这个@yield,你应该做类似的事情

@extends('index')

@section('content')
    <form>
        .... your login form
    </form>
@stop

@extends('index')

@section('content')
    @include('shared.bar.bar')
@stop

@extends('index')

@section('content')
    @include('shared.bar.bar')

    <form>
        .... your login form
    </form>
@stop

要通过章节更改标题,您还可以执行以下操作:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html lang="en">
<head>
    <title>@yield('title')</title>
</head>

<h1 class="title">
    @yield('title')
</h1>

您的登录刀片文件,您可以

@extends('index')

// This will tell the Blade Compiler to replace every 
// occurence of @yield('title')
@section('title')
    User Login
@stop

@section('content')
    @include('shared.bar.bar')

    <form>
        .... your login form
    </form>
@stop