Laravel基础_关于view共享数据的示例讲解
1.所有视图共享数据(share)
当所有视图都需要同一个数据时,使用视图工厂的share方法。
全局帮助函数view,如果传入参数,则返回Illuminate\View\View实例,不传入参数则返回Illuminate\View\Factory实例。所以我们可以通过在服务提供者(app\Providers\AppServiceProvider.php)的boot方法中使用如下方式实现视图间共享数据:
/** * Bootstrap any application services. * * @return void */ public function boot() { //视图间共享数据 view()->share('share','share'); }
然后在你的任何一个视图文件中这样写:
{{ $share }}
就会输出这个变量。
2.部分视图共享数据(Composer)
当一部分视图文件中需要同一个数据的时候,比如登录信息,可以通过视图工厂的composer方法实现。
简单起见,我们还是基于AppServiceProvider,不去单独创建服务提供者。
/** * Bootstrap any application services. * * @return void */ public function boot() { //视图间共享数据 view()->share('share','share'); //视图Composer view()->composer('admin',function($view){ $view->with('user',array('name'=>'lili','age'=>'18')); }); }
这样,在admin视图模板文件中就可以使用一下代码来输出。
{{ $user['name'] }} {{ $user['age'] }}
你也可以传递数据到多个视图:
view()->composer(['hello','home'],function($view){ $view->with('user',array('name'=>'test','avatar'=>'/path/to/test.jpg')); });
甚至所有视图(使用通配符*):
view()->composer('*',function($view){ $view->with('user',array('name'=>'test','avatar'=>'/path/to/test.jpg')); });
以上这篇Laravel基础_关于view共享数据的示例讲解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我们。
相关推荐
-
在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框架模板之公共模板、继承、包含实现方法分析
本文实例讲述了laravel框架模板之公共模板.继承.包含实现方法.分享给大家供大家参考,具体如下: 简介: 利用laravel框架开发后台管理系统或web站点,即嵌入式开发,所以php开发人员要自己整合模板. 本篇举例后台管理系统 模板路径:/resources/views/admin 1.建立公共目录 /resources/views/admin/layouts/ layouts下面分别建立如下几个模板(可自行减少或增多) /header.blade.php 头部 /main.blade.
-
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基础-关于引入公共文件的两种方式
(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
-
Laravel基础_关于view共享数据的示例讲解
1.所有视图共享数据(share) 当所有视图都需要同一个数据时,使用视图工厂的share方法. 全局帮助函数view,如果传入参数,则返回Illuminate\View\View实例,不传入参数则返回Illuminate\View\Factory实例.所以我们可以通过在服务提供者(app\Providers\AppServiceProvider.php)的boot方法中使用如下方式实现视图间共享数据: /** * Bootstrap any application services. * *
-
selenium + python 获取table数据的示例讲解
方法一: <code class="language-python">""" 根据table的id属性和table中的某一个元素定位其在table中的位置 table包括表头,位置坐标都是从1开始算 tableId:table的id属性 queryContent:需要确定位置的内容 """ def get_table_content(tableId,queryContent): arr = [] arr1 = []
-
Vue.js展示AJAX数据简单示例讲解
最近琢磨了一下vue.js,并在项目中进行了运用,感觉非常好用,强烈推荐. 当通过AJAX方式取回数据后,使用vue.js可以完美地按一定逻辑在页面上的展示数据,代码简单.优美.自然,而且便于与在用的页面框架集成. 感谢vue.js的作者,官方网站地址:https://cn.vuejs.org 举个小例子.注意,代码中使用jQuery.bootstrap.没有用过bootstrap不影响阅读本文. 一.返回的JSON数据示例 [ {"playid":"12113c676a4e
-
详解Laravel视图间共享数据与视图Composer
1.在视图间共享数据 除了在单个视图中传递指定数据之外,有时候需要在所有视图中传入同一数据,即我们需要在不同视图中共享数据.要实现这一目的,需要使用视图工厂的share方法. 全局帮助函数view和response类似,如果传入参数,则返回Illuminate\View\View实例,不传入参数则返回Illuminate\View\Factory实例.所以我们可以通过在服务提供者的boot方法中使用如下方式实现视图间共享数据: <?php namespace App\Providers; use
-
laravel多视图共享数据实例代码
目录 前言 在视图间共享数据 视图Composer 添加 Composer 到多个视图 总结 前言 在做项目中,网站前台或者后台有些数据需要在多个视图页面使用,例如用户基本信息数据,菜单展示数据.首先想到的是在每个控制器里传入这些需要的数据,但显然这并不科学.经查视图文档了解,可以使用视图间共享数据和视图Composer解决. 在视图间共享数据 有时候我们需要在所有视图之间共享数据片段,这时候可以使用视图工厂的 share 方法,通常,需要在服务提供者的 boot 方法中调用 share 方法,
-
Laravel5.4框架中视图共享数据的方法详解
本文实例讲述了Laravel5.4框架中视图共享数据的方法.分享给大家供大家参考,具体如下: 每个人都会遇到这种情况:某些数据还在每个页面进行使用,比如用户信息,或者菜单数据,最基本的做法是在每个视图空控制器中传入这些数据,但显然并不是我们想要的结果.另一种方法就是使用视图数据共享,视图数据共享的基本使用很简单,可查看视图文档了解详情,这里我们演示两个使用示例:在视图间共享数据和视图Composer 在视图中共享数据 除了在单个视图中传递指定数据之外,有时候需要在所有视图中传入同一数据,即我们需
-
Python multiprocessing.Manager介绍和实例(进程间共享数据)
Python中进程间共享数据,处理基本的queue,pipe和value+array外,还提供了更高层次的封装.使用multiprocessing.Manager可以简单地使用这些高级接口. Manager()返回的manager对象控制了一个server进程,此进程包含的python对象可以被其他的进程通过proxies来访问.从而达到多进程间数据通信且安全. Manager支持的类型有list,dict,Namespace,Lock,RLock,Semaphore,BoundedSemaph
-
Android开发中多进程共享数据简析
背景 最近在工作中遇到一个需求,需要在接收到推送的时候将推送获得的数据存起来,以供app启动时使用.我们会认为这不是So easy吗?只要把数据存到SharedPreferences中,然后让app打开同一个SharedPreferences读取数据就可以了.但是在实际的测试中,我们发现推送进程存入的数据,并不能在app进程中获得.所以这是为什么呢,也许聪明的读者从我们上面的陈述中已经发现了原因,因为我们有两个进程,推送进程负责将推送数据存入,而app进程负责读取,但是正是由于是两个进程,如果它
-
Laravel中基于Artisan View扩展包创建及删除应用视图文件的方法
本文实例讲述了Laravel中基于Artisan View扩展包创建及删除应用视图文件的方法.分享给大家供大家参考,具体如下: 1.简介 本扩展包添加了两个视图相关的Artisan命令到Laravel应用,以便我们通过Artisan命令即可创建和管理视图文件,可谓是进一步解放了生产力. 2.安装 还是通过Composer安装: composer require sven/artisan-view 安装完成后到config/app.php中注册服务提供者ArtisanViewServiceProv
随机推荐
- Java用数组实现循环队列的示例
- javascript使用正则控制input输入框允许输入的值方法大全
- 分享几个新增备案不关站的代码
- Docker创建MySQL容器的方法
- QQ关于.net的精彩对话
- Javascript拖拽&拖放系列文章3之细说事件对象第1/4页
- js精准的倒计时函数分享
- Python urllib模块urlopen()与urlretrieve()详解
- vuejs父子组件通信的问题
- 推荐发几个常用控件(新加DHTML控件)
- jquery中实现简单的tabs插件功能的代码
- javascript实现获取指定精度的上传文件的大小简单实例
- Python for Informatics 第11章之正则表达式(四)
- Java编程之内置观察者模式实例详解
- android图库竖屏不显示status bar的解决方法
- Android开发中Toast显示消息的方法小结
- C#留言时间格式化
- PHP7下协程的实现方法详解
- 在 Linux/Unix 中不重启 Vim 而重新加载 .vimrc 文件的流程
- python占位符输入方式实例