Я хотел бы выделить текущую активную ссылку
<a [routerLink]="['/route']" />
После рендеринга я получаю тег <a>
с правильной ссылкой, которая работает хорошо.
Но также в этой директиве есть дополнительное поведение, которое должно добавить класс router-link-active к привязке в случае, если href совпадает с текущим местоположением.
Проблема в том, что это плохо работает.
get isRouteActive(): {
return this._router.isRouteActive(this._navigationInstruction);
}
Внутри _router.IsRouteractive есть поле текущей инструкции, которое должно содержать компоненты текущего маршрута. И этот компонент сравнивается с __navigationInstruction. На самом деле, если компоненты маршрута равны - ссылка является текущей.
Проблема в том, что текущая инструкция null. Он становится назначенным в:
Router.prototype.commit = function(...)
Эта функция вызывается после обработки Директивы.
Так что это никогда не должно работать хорошо.