欢迎各位兄弟 发布技术文章
这里的技术是共享的
<nav>{{ $message }}</nav>
<div class="container"> @yield('content') </div>
<footer></footer>
其余页面继承该页面。
nav中的message数据该如何从后台传递过来?是在每个内容页面的controller里都传递一次吗?这样觉得很麻烦 ;另外一个问题,如何在AppServiceProvider的boot()方法中使用Auth::user()->id在各种方式获取当前登录用户的id?
<?php
namespace App\Providers;
use Illuminate\Support\ServiceProvider;
use Auth;
class ComposerServiceProvider extends ServiceProvider
{
/**
* 在容器中注册绑定.
*
* @return void
* @author http://laravelacademy.org
*/
public function boot()
{
// 使用基于闭包的composers...
view()->composer('admin.header', function ($view) {
$data['order-remind']=null;
$data['order']=null;
$data['order-remind']=null;
$view->with('data',$data);
});
view()->composer('admin.nav', function ($view) {
$user=auth()->guard('admin')->user();
$view->with('user',$user);
});
view()->composer('agent.main', function ($view) {
$user=auth()->guard('agent')->user();
$view->with('user',$user);
});
view()->composer('account.main', function ($view) {
$user=auth()->guard('account')->user();
$wechat=Auth::guard('wechat')->user();
$view->with('account',$user)->with('wechatAccount',$wechat);
});
view()->composer(['wechat.js.index','wechat.activity.vote.main'], function ($view) {
$app=app('wechat');
$js=$app->js;
$view->with('js',$js);
});
}
/**
* 注册服务提供者.
*
* @return void
*/
public function register()
{
//
}
}
$message 你可以直接在blade模板的{{}}内写php语句查询。比如:Message::first() 或者 Message::where()...之类的。
当期登录用户的id也可以直接在blade里写
Auth::user()->id
来自 https://segmentfault.com/q/1010000005594982?_ea=828400