Routerlink работает без тега привязки

Я только что заметил, что routerLink работает с любым элементом, например, с div, mat-card, mat-title и т. д., без необходимости оборачивать тег привязки.

Это нормально/безопасно или вам нужно использовать его с якорем? Может быть, это может иметь некоторые плохие последствия позже, если это сделать?


person CodeHip    schedule 27.03.2018    source источник


Ответы (1)


Я думаю, что routerLink.navigate — это прямой канал, который прослушивает onclick.

Так что, пока использование onClick безопасно, вы также можете безопасно использовать routerLink.

person ForestG    schedule 27.03.2018
comment
Извините, возможно, я недостаточно ясно выразился, но я имел в виду без использования onClick. Пример: <img mat-card-image class="example-image" src="/assets/images/baby.jpg" alt="Photo of a Shiba Inu" routerLink="/family-detail/{{baby.firstname}}" routerLinkActive="active">it просто работает без использования onClick или тега привязки. - person CodeHip; 27.03.2018
comment
Посмотрите на исходный код: github.com/angular/angular/blob/5.2.9/packages/router/src/ Строка 137: @HostListener('click') означает, что если вы используете эту директиву, вы всегда прослушиваете событие щелчка для навигации - person ForestG; 27.03.2018