Laravel基础-两种方式引入公共文件

(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-->  //parent意为:子模板可以获取主模板里的内容
我是layout的替换内容123
@endsection
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值