Как ссылаться на элемент, управляемый директивой * ngIf, без ссылки на шаблон в Angular 6? - PullRequest
0 голосов
/ 13 ноября 2018

Я хочу получить ссылку на элемент, контролируемый директивой *ngIf, без использования ссылки на шаблон в Angular 6.

Например, у меня есть:

<a *ngIf="allowAccessTo()" [routerLink]="['/home']" class="nav-item nav-link">Home</a>

Я хотел бы иметь ссылку на этот элемент, а именно на href / pathname из [routerLink], внутри моего allowAccessTo() метода, но без необходимости добавлять шаблонную ссылку на элемент.

Есть ли способ сделать это?

Я планирую использовать href / pathname из элемента для вызова моей службы защиты ролей.

У меня это работает, если я прохожу маршрут в метод allowAccessTo() (allowAccessTo('home')), но предпочел бы не делать этого.

Это моя основная навигация по приложению, поэтому таких ссылок будет много, и даже если бы я добавил ссылку на шаблон, я бы не знал, какую из них искать внутри allowAccessTo(), не зная, какой элемент вызвал allowAccessTo() метод для вызова.

1 Ответ

0 голосов
/ 13 ноября 2018

Не могли бы вы создать переменную в файле машинописного текста, например: currentRoute, и устанавливать эту переменную всякий раз, когда вам нужно выполнить маршрутизацию?Затем эта переменная может быть доступна в функции allowAccessTo() напрямую.

...