我有一种情况,我有一个视图文件users.blade.php扩展主。主包含另一个名为header.blade.php的文件,我想将users.blade中的一些数据传递给header.blade。刀片从视图传递值到主,然后传递给header.blade
这里是文件
/****** Users.blade.php *********/
@extends('shared.master')
@section('title', 'Dashboard')
@section('pagecss')
<link rel="stylesheet" href="links to css file" />
@endsection
这里的简化版本的master.blade.php
/******Shared/master.blade.php ********/
<html>
<head>
<title>@yield('title')</title>
@include('shared.header')
</head>
<body >
@yield('content')
</body>
</html>
这里是头文件
/******Shared/header.blade.php ********/
<link rel="stylesheet" href="links to bootstrap" />
@yield('pagecss')
<link rel="stylesheet" href="links to other files" />
@yield( 'pagecss')在header.blade中不起作用,但它在master.blade中起作用。现在我不能将它粘贴到master.blade中,因为有些文件会覆盖其他文件,所以它必须按照特定的顺序。任何想法如何让header.blade中的收益工作?
编辑: 我喜欢巴拉特Geleda办法,我已经修改了代码,包括一些here文档,使之更加方便。但我认为它是一种黑客,仍然在寻找更好的解决方案。
/********** Users.blade.php ***********/
@extends('shared.master')
@section('title', 'Dashboard')
@section('pagecss')
<link rel="stylesheet" href="links to css file" />
@endsection
<?php $pagecss = <<<CSS_FILES
<link rel="stylesheet" href="links to page css" />
CSS_FILES;
?>
/*********** Shared/header.blade.php **********/
@if(isset($pagecss))
{{-- */ echo $pagecss;/* --}}
@endif
嘿布局
,你有没有试过你问过的东西。我只是试了一下,似乎实际上按预期完美地工作。我编辑了我的答案。 –