Laravel5.8です。
Laravelでビューコンポーザーでユーザー情報を使えるようにしたいのですが、$userがundefinedになります。
丸一日時間を費やしてしまったのですが、解決しませんでした。
ここがおかしいんじゃないの?という箇所があればご指摘お願いします。
よろしくお願いします。
config/app.php
App\Providers\ComposerServiceProvider::class,
App\Http\ViewComposers\UserComposer.php
<?php namespace App\Http\ViewComposers; use Illuminate\Contracts\View\View; use Illuminate\Contracts\Auth\Guard; class UserComposer { protected $auth; public function __construct(Guard $auth) { $this->auth = $auth; } public function compose(View $view) { $view->with('user', $this->auth->user()); } }
App\Providers\ComposerServiceProvider
<?php namespace App\Providers; use Illuminate\Support\ServiceProvider; use App\Http\ViewComposers\UserComposer; use Illuminate\Support\Facades\View; class ComposerServiceProvider extends ServiceProvider { /** * Register services. * * @return void */ public function register() { // } /** * Bootstrap services. * * @return void */ public function boot() { View::composers([ UserComposer::class => 'layouts.*' ]); } }
views\layouts\app.blade.php
<a id="navbarDropdown" class="nav-link dropdown-toggle" href="#" role="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false" v-pre> {{ $user->email }} <span class="caret"></span></a>
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。