我们在开发项目的时候,视图的布局往往都是拥有一个统一的模版的,我们不可能在每张页面都去写上相同布局的代码,我们可以建立一个layout.blade.php的视图文件,将基础布局写在这里,然后让别的视图文件都来继承它。
现在打开项目,先查看下route.php和PagesController.php文件中的内容:
route.php中如下:
Route::get('/', 'PagesController@home');
Route::get('about', 'PagesController@about');
将PagesController.php中修改如下:
namespace App\Http\Controllers;
class PagesController extends Controller
{
public function home()
{
$users = ['Zhoujiping', 'Kuker Chou'];
return view('welcome', compact('users'));
}
public function about()
{
return view('about');
}
}
在resources/views/下建立layout.blade.php的文件,输入以下内容:
布局文件@yield('content')
然后将welcome.blade.php代码改成如下:
@extends('layout')
@section('content')
这里是welcome.balde.php的页面
@stop
我们让所有的视图通过@extends('布局文件的名称')去继承布局文件,通过@section()去覆写@yield就可以了,看下效果
ok, 这节就这样.