Я занимаюсь разработкой веб-приложения с использованием фреймворка Laravel.Я пытаюсь использовать событие и слушателя в моем приложении.Но событие сработало, и прослушиватель сработавшего события не сработал.
Это действие моего контроллера
public function store(Request $request)
{
//other code
$item = Item::create($request->all())
broadcast(new ItemCreated($item));
return "Item created successfully";
}
Это мои события \ ItemCreated.php
class ItemCreated
{
use Dispatchable, InteractsWithSockets, SerializesModels;
public $item;
public function __construct($item)
{
$this->item = $item;
}
}
Затем у меня есть прослушиватель для этого события.
Listeners / EmailSubscribeedUsers.php
class EmailSubscribedUsers
{
public function __construct()
{
//this constructor is not triggered
}
public function handle(ItemCreated $event)
{
//This method is not fired
}
}
В EventServiceProvider я зарегистрировал событие и прослушиватель, как этот
protected $listen = [
ItemCreated::class => [
EmailSubscribedUsers::class
]
];
Событие сработало.Но слушатель не уволен.Зачем?Что не так?
Я попробовал следующие решения.
php artisan optimize
composer dumpautoload
php artisan clear-compiled