Как использовать HostListener

Мне интересно, как я могу использовать @HostListener. Единственная информация, которую я нашел, была в cheatsheet:

@HostListener('click', ['$event']) onClick(e) {...}

Я пытаюсь зарегистрировать элемент, который пользователь нажал. Я пробовал вот так:

@HostListener('click')({
    onClick(e) {
        console.log(e)
    }
})

Но затем я получаю сообщение об ошибке:

TypeError: decorator is not a function(…)

Любые идеи?

Ответ 1

Сообщение об ошибке довольно точно. Декоратор предназначен только для украшения функции (или класса, поля, параметра,...) Просто поставьте его перед кодом, который вы хотите украсить:

@HostListener('click', ['$event'])
onClick(e) {
  console.log(e)
}