Integration of Symfony\EventDispatcher into Nette\DI.
$ composer require symnedi/event-dispatcher
Register the extension in config.neon
:
extensions:
- Symnedi\EventDispatcher\DI\EventDispatcherExtension
There are 3 important parts using EventDispatcher:
- Event
- EventSubscriber
- EventDispatcher
Event is value object, it simply stores data we use - e.g. user email and password.
EventSubscriber listens to certain event and invokes some action, when that happens - when user logs in.
EventDispatcher invokes the event in the place where it happens - in the login form just after the login method.
To see the real code in practise, there is example section with both Event and EventSubscriber.
Also you can find AppEvents.php
that basically lists all used events. It's not necessary for the starters, just convenient in huge applications.
For more details, check Symfony documentation, or this very nice presentation with real-life examples.
$ phpunit
Please see CONTRIBUTING for details.