Я пытаюсь получить список всех ссылок в моем текущем компоненте, с шаблоном, который выглядит примерно так:
<div *ngFor="let link of links">
<a [routerLink]="[link.url]">{{ link.label }}</a>
</div>
Я пытался настроить @ViewChildren(RouterLink) links: QueryList<RouterLink>;
. Хотя этот список всегда был пустым.
Быстрый эксперимент с @ViewChild(RouterLink) elem: RouterLink;
:
<div [routerLink]="[]">Bla</div>
возвращает значение, а
<a [routerLink]="[]">Bla</a>
нет.
Я проверил в документации: https://angular.io/api/router/RouterLink, где селектор фактически задан как :not(a)[routerLink]
, поэтому эксперимент имеет смысл.
Теперь вопрос: как мне получить список [routerLink]
, которые являются атрибутом элемента <a>
? Я не смог найти AComponent
или что-то подозрительное.
Возможен запасной вариант: добавить идентификатор для всех элементов <a #myLink [routerLink]="[]">
, но это кажется странным, поскольку у меня уже есть критерий идентификации, который я хотел бы использовать.
Как мне найти мой список [routerLink]
с?