Я работаю с проектом Angular 6, в котором я отключил / удалил hash-location-стратегии, который удаляет # из URL.
из-за этого изменения ссылка имеет:
<li routerLinkActive="active">
<a [routerLink]="['/settings']">Contact Settings</a>
<ul class="child-link-sub">
<li>
<a href="#contactTypes">Contact Types</a>
</li>
</ul>
</li>
больше не работает, он просто пропускает URL текущих компонентов и ставит #contactTypes после localhost.
Я нашел эту ссылку , которая должна решить проблему, используя
<a [routerLink]="['/settings/']" fragment="contactTypes" >Contact Types</a>
, котораяпомещает #contactTypes в конец URL-адреса, но не перемещается в верхнюю часть браузера.
Источник: https://github.com/angular/angular/issues/6595