Всем привет.
Ситуация такая: есть класс: SomeClass1- в нем происходит нажатие на кнопку.
Так же есть класс SomeClass2 - в нем нужно отследить, что было нажата кнопка в классе SomeClass1.
Как это реализовать?:
Речь идет о кастомных событиях.
То есть в классе SomeClass1 создается свое событие как я понимаю через new CustomEvent(), а в классе SomeClass2 я подписываюсь на это событие через addEventListener?
Как это работает?
P/S.
читал статьи, но не видел нигде примера взаимодействия между объектами через события.
Мне кажется очень странным логика кидать событие на корневой элемент. Почему не создать его в воздухе и задать условия для его возникновения? Когда условия происходят происходит и событие, а когда происходит событие, то все кто на него подписался узнают об этом.
Мне кажется очень странным логика кидать событие на корневой элемент. Почему не создать его в воздухе и задать условия для его возникновения? Когда условия происходят происходит и событие, а когда происходит событие, то все кто на него подписался узнают об этом
Просто это одна из имплементаций паттерна Observer, которая называется EventEmitter, другая работает как вам и хочется (если я вас правильно понял) и называется PubSub. На нативном JS ее нет, но ее легко написать самому, или вспользоваться уже готовой.