当前位置:首页 > CMS教程 > 其它CMS > 列表

laravel5.1框架基础之Blade模板继承简单使用方法分析

发布:smiling 来源: PHP粉丝网  添加日期:2021-12-15 10:30:09 浏览: 评论:0 

本文实例讲述了laravel5.1框架基础之Blade模板继承简单使用方法,分享给大家供大家参考,具体如下:

模板继承什么用? 自然是增强基础页面的复用,有利于页面文档的条理,也便于更改多处使用的内容,如页头、页脚

1.用法概要

@include('common.header') 包含子视图

@extends('article.common.base') 继承基础模板

@yield('content') 视图占位符

@section('content') @endsection继承模板后向视图占位符中填入内容

{{-- 注释 --}} Blade模板中注释的使用

2.具体使用

2.1 新建Article基础模板base.blade.php

直接使用Bootstrap4模板代码及CDN,新建视图基础模板

路径resources/views/article/common/base.blade.php

  1. <!DOCTYPE html><html lang="en"
  2. <head> 
  3. <title>Artilce|标题在此</title> 
  4. <meta charset="utf-8"
  5. <meta name="viewport" content="width=device-width, initial-scale=1"
  6. <meta http-equiv="x-ua-compatible" content="ie=edge">  <link rel="stylesheet" href="https://cdn.rawgit.com/twbs/bootstrap/v4-dev/dist/css/bootstrap.css" rel="external nofollow" rel="external nofollow" > 
  7. </head> 
  8. <body> 
  9. {{-- 包含页头 --}} 
  10. @include('article.common.header'
  11. {{-- 继承后插入的内容 --}} 
  12. @yield('content'
  13. {{-- 包含页脚 --}} 
  14. @include('article.common.footer'
  15. <script src="http://ajax.useso.com/ajax/libs/jquery/2.1.4/jquery.min.js"></script> 
  16. <script src="https://cdn.rawgit.com/twbs/bootstrap/v4-dev/dist/js/bootstrap.js"></script> 
  17. </body> 
  18. </html> 

2.2. 建子视图文件 页头和页脚

页头文件  resources/views/article/common/header.blade.php

  1. <nav class="navbar navbar-light bg-faded"
  2.   <div class="container"
  3.   <a class="navbar-brand" href="#" rel="external nofollow" rel="external nofollow" >Articles</a> 
  4.   <ul class="nav navbar-nav"
  5.     <li class="nav-item active"
  6.     <a class="nav-link" href="/article" rel="external nofollow" >首页 <span class="sr-only">(current)</span></a> 
  7.     </li> 
  8.     <li class="nav-item"
  9.       <a class="nav-link" href="#" rel="external nofollow" rel="external nofollow" >写文章</a> 
  10.     </li> 
  11.   </ul> 
  12.   <ul class="nav navbar-nav pull-right"
  13.   <li class="nav-item"
  14.     <a href="" class=" rel="external nofollow" rel="external nofollow" btn btn-primary-outline">登录</a> 
  15.   </li> 
  16.   <li class="nav-item"
  17.     <a href="" class=" rel="external nofollow" rel="external nofollow" btn btn-success-outline">注册</a> 
  18.   </li> 
  19.   </ul> 
  20. </div> 
  21. </nav> 

页脚文件 resources/views/article/common/footer.blade.php

  1. <div class="footer" 
  2.     style="width: 100%;height: 300px;background-color: #00B388;padding-top: 50px;"
  3.   <div class="container"
  4.     <h1 style="color: #FFFFFF;font-size: 1.5em;">Articles</h1> 
  5.   </div> 
  6. </div> 

2.3 即可继承模板,实现复用

新建主页文件在resources/views/article/index.blade.php

  1. @extends('article.common.base'
  2. @section('content'
  3.   <div class="container" style="height: 500px;text-align: center;"
  4.   <h1 style="position: absolute;left: 35%;top: 30%;">继承模板的主页搞定了!</h1> 
  5.    {{-- 这里是Blade注释 --}} 
  6.   </div> 
  7. @endsection 

2.4 如何访问?

需要路由以及控制器配合,这里简单只用路由实现,详细内容请点击,以及接下来的其它文段

在app/Http/routes.php 路由注册文件写上如下代码

  1. Route::get('/',function(){ 
  2.   return view('article.index'); 
  3. }); 

启动你的配置的laravel跑的服务器,比如我在目录地址下php artisan serve

浏览器输入 : localhost:8000,即可看到效果图

3. 效果图

laravel5.1模板继承 Blade

articles效果图|色彩 #00B388

X bootstrap4起始模板代码

bootstrap4文档

  1. <!DOCTYPE html> 
  2. <html lang="en"> 
  3.  <head> 
  4.   <!-- Required meta tags always come first --> 
  5.   <meta charset="utf-8"> 
  6.   <meta name="viewport" content="width=device-width, initial-scale=1"> 
  7.   <meta http-equiv="x-ua-compatible" content="ie=edge"> 
  8.   <!-- Bootstrap CSS --> 
  9.   <link rel="stylesheet" href="https://cdn.rawgit.com/twbs/bootstrap/v4-dev/dist/css/bootstrap.css" rel="external nofollow" rel="external nofollow" > 
  10.  </head> 
  11.  <body> 
  12.   <h1>Hello, world!</h1> 
  13.   <!-- jQuery first, then Bootstrap JS. --> 
  14.   <script src="http://ajax.useso.com/ajax/libs/jquery/2.1.4/jquery.min.js"></script> 
  15.   <script src="https://cdn.rawgit.com/twbs/bootstrap/v4-dev/dist/js/bootstrap.js"></script> 
  16.  </body> 
  17. </html>

Tags: laravel5 1模板继承 Blade

分享到: