Laravel 5 未定义变量:header(视图:C:\blog\resources\views\pages\welcome.blade.php)

Laravel 5 未定义变量:header(视图:C:\blog\resources\views\pages\welcome.blade.php),laravel-5,Laravel 5,我在运行应用程序时遇到以下错误 Undefined variable: header (View: C:\blog\resources\views\pages\welcome.blade.php) 控制器中的My getIndex()函数: public function getIndex(){ \View::make('pages/welcome')->nest('header', 'layout.header'); return view('pages

我在运行应用程序时遇到以下错误

Undefined variable: header (View: C:\blog\resources\views\pages\welcome.blade.php)
控制器中的My getIndex()函数:

public function getIndex(){
        \View::make('pages/welcome')->nest('header', 'layout.header');
        return view('pages/welcome');
    }
My welcome.blade.php

{{ $header }}
<body>
....
</body>

您正在创建一个包含嵌套子视图的视图,然后创建并返回一个不包含嵌套子视图的全新视图:

public function getIndex(){
    \View::make('pages/welcome')->nest('header', 'layout.header');
    return view('pages/welcome');
}
应该是

public function getIndex(){
    return \View::make('pages/welcome')->nest('header', 'layout.header');
}
请注意,
view()
\view::make()
的别名

您可以使用
{!!$header!!}
来防止对HTML进行转义


使用Laravel 5+开发,您应该使用将模板插入到视图中。

尝试
{!!$header!!}
-这不会转义数据。现在它说,解析错误:语法错误,意外的“!”,应为“,”或“')”编辑-每侧一个花括号-而不是2个。您是否可以分享如何返回多个部分?
public function getIndex(){
    \View::make('pages/welcome')->nest('header', 'layout.header');
    return view('pages/welcome');
}
public function getIndex(){
    return \View::make('pages/welcome')->nest('header', 'layout.header');
}