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

以上这篇Laravel基础-关于引入公共文件的两种方式就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我们。

(0)

相关推荐

  • 在laravel框架中实现封装公共方法全局调用

    1. 创建 functions.php 在 app/Helpers/(目录可以自己随便来)下新建一个文件 functions.php,在内部补充如下代码: <?php /** * 公用的方法 返回json数据,进行信息的提示 * @param $status 状态 * @param string $message 提示信息 * @param array $data 返回数据 */ function showMsg($status,$message = '',$data = array()){ $

  • Laravel 在views中加载公共页面的实现代码

    1:我们使用了Blade模板,并创建一个layout作为通用的模板.将子页面作为yield输出: <!-- store in resource/view/layout.blade.php --> <!DOCTYPE html> <html> <head> <title>Laravel 5 - @yield('title')</title> <link rel="stylesheet" href=".

  • laravel 实现向公共模板中传值 (view composer)

    view composers 与视图有关,用在一个service provider 的boot()函数里,就是让一个view加载的时候,由于view composer的作用,去调用某个函数传个参啊啥的. 1,创建service provider php artisan make:provider ComposerServiceProvider 再把ComposerServiceProvider加到config/app.php里面 2,写view composer public function

  • laravel框架模板之公共模板、继承、包含实现方法分析

    本文实例讲述了laravel框架模板之公共模板.继承.包含实现方法.分享给大家供大家参考,具体如下: 简介: 利用laravel框架开发后台管理系统或web站点,即嵌入式开发,所以php开发人员要自己整合模板. 本篇举例后台管理系统 模板路径:/resources/views/admin 1.建立公共目录 /resources/views/admin/layouts/ layouts下面分别建立如下几个模板(可自行减少或增多) /header.blade.php  头部 /main.blade.

  • Laravel基础_关于view共享数据的示例讲解

    1.所有视图共享数据(share) 当所有视图都需要同一个数据时,使用视图工厂的share方法. 全局帮助函数view,如果传入参数,则返回Illuminate\View\View实例,不传入参数则返回Illuminate\View\Factory实例.所以我们可以通过在服务提供者(app\Providers\AppServiceProvider.php)的boot方法中使用如下方式实现视图间共享数据: /** * Bootstrap any application services. * *

  • 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 v

  • Vue单页应用引用单独的样式文件的两种方式

    问题描述 对于.vue的文件来说,也是由结构.行为.样式三部分组成,在样式部分有个scoped的属性,也就是当前页面有效,当style标签内样式比较多时或者.vue文件之间有重复的时候,总感觉看起来不够整洁,所以就需要引入一些公共样式.下面就先说下如何引入单独的样式文件,这里就以CSS文件为例,之后再说下我的项目中的样式文件的划分 引入单独的样式文件 方式一 在main.js中引入静态资源,这种方法使得该样式文件被项目中的组件所共享 // The Vue build version to loa

  • Vue中引入svg图标的两种方式

    Vue中引入svg图标的方式 Vue中引入svg图标的方式一 安装 yarn add svg-sprite-loader --dev svg组件 index.vue <!-- svg组件 --> <template> <svg class="svg-icon" :class="svgClass" aria-hidden="true"> <use :xlink:href="iconName&quo

  • Python简单实现安全开关文件的两种方式

    本文实例讲述了Python简单实现安全开关文件的两种方式.分享给大家供大家参考,具体如下: 以下代码经Python3.3测试. 方式1: try: file = open('config.ini', 'w') print("It's a text file", file=file) except IOError as err: print('File error: ' + str(err)) finally: if 'file' in locals(): file.close() 方式

  • Spring加载properties文件的两种方式实例详解

    在项目中如果有些参数经常需要修改,或者后期可能需要修改,那我们最好把这些参数放到properties文件中,源代码中读取properties里面的配置,这样后期只需要改动properties文件即可,不需要修改源代码,这样更加方便.在Spring中也可以这么做,而且Spring有两种加载properties文件的方式:基于xml方式和基于注解方式.下面分别讨论下这两种方式. 1. 通过xml方式加载properties文件 我们以Spring实例化dataSource为例,我们一般会在beans

  • vue data引入本地图片的两种方式小结

    我就废话不多说了,大家直接看吧! 第一种 <template> <img :src="imgsrc"> </template> <script> export default { data () { return { imgsrc: require('../../images/ICON-electronicbilling.png') } } } </script> 第二种 <template> <img :s

  • Vue导入excel文件的两种方式(form表单和el-upload)

    目录 前言 第一种方法:form表单 一.文件上传的三要素是什么? 二.具体使用步骤 第二种方法:el-upload 总结 前言 两种导入文件的方法:form表单和el-upload 第一种方法:form表单 一.文件上传的三要素是什么? 文件上传的三要素: 表单post请求 input框的type=file 在form表单中添加enctype=“multipart/form-data” 二.具体使用步骤 代码如下(示例): <form action="/" method=&qu

  • IE下写xml文件的两种方式(fso/saveAs)

    出于安全考虑,Firefox等浏览器不支持写本地文件. IE下可以通过以下几种方式写xml文件 方式一:fso 复制代码 代码如下: // LoadXML()见上一篇IE下读取XML var xmlDom = loadXML("config.xml"); var contentText = ""; if(typeof xmlDom.xml != 'undefined') { contentText = xmlDom.xml; var fso = new Active

  • 详解在IDEA中将Echarts引入web两种方式(使用js文件和maven的依赖导入)

    一:js引入 首先要从Echart下载 选择你想要的图表后,滑到最下面的下载 将下载好的文件放入 然后引入HTML中 <script src="echarts.min.js"></script> 二:maven引入 首先将maven依赖导入 <!-- https://mvnrepository.com/artifact/org.webjars.bower/echarts --> <dependency> <groupId>or

  • 详解springMVC两种方式实现多文件上传及效率比较

    springMVC实现多文件上传的方式有两种,一种是我们经常使用的以字节流的方式进行文件上传,另外一种是使用springMVC包装好的解析器进行上传.这两种方式对于实现多文件上传效率上却有着很大的差距,下面我们通过实例来看一下这两种方式的实现方式,同时比较一下在效率上到底存在着多大的差距. 1.下载相关jar包.需要引入的jar出了springMVC的jar包外,还需要引入com.springsource.org.apache.commons.fileupload-1.2.0.jar和com.s

随机推荐