Используя веб-компоненты без какой-либо инфраструктуры, как правильно реализовать пользовательское событие? Например, скажем, у меня есть пользовательский элемент x-pop-out
, который имеет настраиваемое событие pop
. Я бы хотел, чтобы все следующее работало:
<x-pop-out onpop="someGlobal.doSomething()"/>
var el = document.getElementsByTagName('x-pop-out')[0];
el.onpop = ()=> someGlobal.doSomething();
//or
el.addEventListener('pop', ()=> someGlobal.doSomething());
Последнее, что я понимаю, как это сделать, но нужно ли мне настраивать атрибут и геттер/сеттер для каждого? Кроме того, является ли eval()
подходящим способом выполнить строку из атрибута?