(1)、先在app\Http\routes.php中定義路由;
Route::get('view','ViewController@view'); Route::get('article','ViewController@article'); Route::get('layout','ViewController@layout');
(2)、然後在Http\Controllers\ViewController.php中寫入方法;
public function view(){ return view('index'); } public function article(){ return view('article'); } public function layout(){ return view('layout'); }
(3)、然後在新建不同的視圖文件,路徑為:resources\views
index.blade.php article.blade.php layout.blade.php
重點:
1、使用include的方式:
一、在views下建立common目錄文件,用於存放公共文件;
二、將公共內容放入common下,如在common建立了一個header.blade.php ;
三、在視圖中引入公共文件:
@include('common.header') //这样的书写方式来引入:目录名称.公共文件名
另外,如果在header公共區域中有不同的數據,那麼可以使用以下方式來傳遞數據:
//视图中的代码 @include('common.header',['page' => '详细页面']) //header.blade.php公共文件中的代码 {{$page}}--公共部分
那麼,以上會輸出:詳細頁–公共部分
即傳遞成功
2、使用子視圖的方式來引入,並且擁有相互傳遞資料的功能:
一、在views下建立layouts目錄,其下放主視圖。 views下的則為子視圖。
二、在layouts下建立home.blade.php主視圖檔。可以供子視圖呼叫。
三、在views目錄下的layout.blade.php中引入主視圖檔:採用繼承的方式:
home主視圖裡:
<div class="container"> <!-- @yield('content') --> yield是一个标识,标识是不一样的变量数据 @section('content') <b>我是主模板里的内容</b> @show //在主视图想获取子视图变量数据的情况下,必须使用show关键字而不是endsection
子視圖裡:
//繼承使用主視圖
@extends('layouts.home')
//section可以取得主範本的內容
@ section('content')
//parent意為:子範本可以取得主範本裡的內容
我是layout的替換內容123
@endsection
更多Laravel相關技術文章,請造訪Laravel教學專欄學習!
以上是laravel如何引用外部文件的詳細內容。更多資訊請關注PHP中文網其他相關文章!