Почему использование события onclick в angular машинописи должно давать ему тип void? - PullRequest
0 голосов
/ 10 марта 2020

Я пытаюсь вызвать функцию onclick в машинописи, написанной на Angular, однако я не знаю, почему появляется эта ошибка.

enter image description here

enter image description here

Кто-нибудь знает, как решить этот тип проблемы? Пожалуйста, помогите и дайте мне предложение, спасибо заранее!

Ответы [ 2 ]

1 голос
/ 10 марта 2020

element.onclick = redirection(); не то, что вы хотите, не так ли? Это означает, что вы устанавливаете обработчик события onclick на результат redirection(), который оказывается неопределенным (поскольку это пустая функция)

Я думаю, что вы хотите сделать это вместо этого:

element.addEventListener('click', this.redirection.bind(this) );

Кроме того, вы не должны применять такие события в Angular. Это огромный анти-шаблон. Вместо этого найдите элемент в своем шаблоне и примените событие нажатия правильным образом

Пример:

<div (click)="redirection()">...</div>

Или, еще лучше, если /ticketdashboard является маршрутом angular:

<div routerLink="/ticketdashboard">...</div>

0 голосов
/ 10 марта 2020

.onclick ожидает функцию, и кажется, что вы назначаете ее в результате вызова функции.

Попробуйте

element.onclick = redirection;
...