be-park/eventer

改进laravel监听器,在数据库中注册事件,使其可恢复

v4.1 2020-10-01 13:17 UTC

This package is auto-updated.

Last update: 2024-08-29 05:18:29 UTC


README

  • 此包改进了laravel管理监听器的方式,使其能够监听事件的上层类
  • 此包允许将事件存储在数据库中,以便使其可恢复

安装

Bepark\Eventer\EventServiceProvider 的扩展添加到事件提供者类 App\Provider\EventServiceProvider

仅此安装即可将事件保存到您的数据库中。

您还可以发布配置文件 php artisan vendor:publish --provider="Bepark\Eventer\AppServiceProvider"。您将能够设置 listen_on_eloquent 以存储由Laravel生成的所有Eloquent事件

监听父类

您可以通过使用EventHelper来监听触发事件的父类。查看StorableEventListener以了解其工作原理。

listenWithChildren() 将开始监听所有事件,并在匹配时调用监听器。

在监听器的 subscribe() 方法中调用它

EventHelper::listenWithChildren(Dispatcher $event, <ParentClass>, 'ListenerClass@method');