这篇文章作为对 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
沒有留言:
張貼留言