У меня есть случай, когда мне нужно перехватить событие клика и выбрать какой-то дополнительный объект конфигурации из компонента, у которого есть атрибут routerLink. Как определить, есть ли они у компонента? Есть elementRef.nativeElement.attributes.ng-reflect-router-link
, но я считаю, что есть лучший способ добиться этого. Или, как определить, какой селектор использовался для сопоставления элемента в моей директиве обработчика кликов - это также ответило бы на мой вопрос.
Как правильно определить, имеет ли выбранный компонент атрибут routerLink?
comment
Вы можете попробовать внедрить routerlink в конструктор компонента.
- person Reactgular   schedule 06.06.2019
comment
Мне нужно было бы сделать это буквально в каждом кликабельном компоненте. Ни за что :(
- person ppotera   schedule 06.06.2019
Ответы (1)
Вы можете добавить событие клика к своим ссылкам, имеющим атрибут routerLink
. Взгляните на следующий ответ: https://stackoverflow.com/a/36214759/8843654
Ваши ссылки будут выглядеть примерно так: <a [routeLink]=['User'] (click)="myCallback()">User</a>
person
StefanN
schedule
06.06.2019
Это решение, но я бы не хотел добавлять его везде в свое приложение. Директива Click-handler, которая сопоставляет элементы через [href], [routerLink] почти все делает из коробки...
- person ppotera; 06.06.2019