0

我的 App\Providers\EventServiceProvider 中有这个:

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

这在我的 App\Listeners\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.

那么谁能告诉我为什么我有这个错误?

4

1 回答 1

1

你的protected $listen数组调用了错误的类。

你需要给它你的事件类的名称,然后是一个监听器列表。

protected $listen = [
   'App\Events\UserLoggedIn' => [
     'App\Listeners\UserLogin'
   ],
];
于 2017-02-06T11:34:43.297 回答