2017-02-06 8 views
0

у меня есть это в моей App \ Провайдеры \ EventServiceProvider:Почему Laravel 5.4 бросает ошибку типа здесь?

protected $listen = [ 
    'Illuminate\Auth\Events\Login' => [ 
     'App\Listeners\UserLogin' 
    ], 
]; 

и это в моих App \ Приёмников \ UserLogin.php:

use App\Events\UserLoggedIn; 

class UserLogin 
{ 
    public function handle(UserLoggedIn $event) 
    { 
    ... 
    } 
} 

, но когда я пытаюсь войти в систему я получаю эту ошибку :

Type error: Argument 1 passed to App\Listeners\UserLogin::handle() must be an instance of App\Events\UserLoggedIn, instance of Illuminate\Auth\Events\Login given. 

Так может кто-нибудь сказать мне, почему у меня эта ошибка?

ответ

1

Ваш массив protected $listen вызывает неправильный класс.

Вам необходимо указать название своего класса событий, а затем список слушателей.

protected $listen = [ 
    'App\Events\UserLoggedIn' => [ 
    'App\Listeners\UserLogin' 
    ], 
]; 
+0

D'oh! Я забыл создать событие. Спасибо. – khany

 Смежные вопросы

  • Нет связанных вопросов^_^