2016年9月30日 星期五

Laravel 5.1 视图数据共享

这篇文章作为对 Laravel 中的视图数据共享 的拓展
那一篇文章介绍了几种是视图数据共享的方法,方法都不错,只是感觉还是有点儿复杂的。 其实 5.1 新增了一种inject的注入方法。 可以直接在视图里面注入数据
直接上代码:
首先需要新建一个服务,比如
// 目录:app/Lists.php

namespace App;

class Lists
{
    public function lists() {
         return Article::limit(12)->get();
    }
}
那么对应的视图文件需要这么写: (这个视图是被@include的)

@inject('lists','App\Lists')
你可能喜欢:
@foreach($lists->lists() as $list) {!! $list->title !!} @endforeach
注意到了么,开头有一个@inject的指令。第一个参数是类名(英文翻译是 “此服务将会替换的变量名”),第二个是命名空间
只需要这么一个指令,注入就完成了,成功以后就是正常的获取数据,填充数据了。
需要注意的是@inject的第一个参数是变量名,但是没有$,而下面调用的时候需要加上$
参考:
顺便还有一篇我写的笔记 需要的可以看一下

from : http://laravel.so/tricks/639834dfa346d9fbc46966dc44d30980

沒有留言:

wibiya widget