Я хотел бы создать глобальный компонент, который будет обрабатывать окна предупреждений и уведомлений на моей странице.Триггер будет в других родственных компонентах
<body>
<alerts/>
<component1 />
<component2/>
</body>
Код для alerts.marko
следующий
class {
onMount() {
this.subscribeTo(document).on('alert', this.handleAlert)
}
handleAlert() {
// do some animations, make it visible
}
}
Код для моих родственных компонентов component1.marko
class {
doSomething() {
// do some async operation
this.emit('alert', alertData);
}
}
Проблема в том, что эта идея не работает, она работает нормально, когда component1
является дочерним элементом компонента alerts
и использует структуру on-[event]()
.
Как я могу реализовать это в marko.js?