Events and hooks Flashcards

1
Q

Что такое hook, зачем он нужен и как создать свой?

a. Как изменить порядок вызова хуков?

A

hook – это функция модуля, вызов которой инициализируется из вне. Хуки предназначены для перехватывания событий и параметров, которые при этом передаются.
Для изменения порядка используется hook_module_implements_alter

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Какие есть виды хуков и в чём различия?

A

Хук и альтер

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Что такое event? В чём его отличия от хука? Как вызвать event? Как создать
свой event?
a. Как изменить порядок вызова ивентов?

A

Event: Непосредственно событие. Каждое событие — это объект. У него есть свои собственные уникальные методы, которые добавляет тот, кто данное событие объявил и вызывает. Как правило, туда передаются необходимые данные для данного события, чтобы на их основе можно было принять решение.
Event Dispatcher: Это сервис, который позволяет получать всю необходимую информацию о событии и производить его “активацию”, чтобы весь код, который подписан, был активирован.
EventSubscriber: Подписчики на события это объекты, которые и выполняют код при определенных событиях. В них описывается на какие события подписан конкретный объект, их позиция в процессе выполнения, и, как правило, сам код для события.
Событие же, “оповещает”, что что-то произошло, о чём вам необходимо знать, и передает вам дополнительную информацию о событии, чтобы вы могли что-то сделать, на основе полученной информации.
События создаются в /src/Event и extends Event

Для изменения порядка надо указать вес вторым параметроом при добавлении колбека

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Что такое event subscriber и как создать свой?

A

Подписчики реализуют EventSubscriberInterface

метод getSubscribedEvents должен отдавать массив с интересующими его событиями

How well did you know this?
1
Not at all
2
3
4
5
Perfectly