Извините, что оживил вопрос.Я использую Angular 7, и я пытаюсь использовать Router Link.
Это мой app-routing-module
const routes: Routes = [
{ path: 'locations' , component : LocationManagerComponent },
{ path: 'locations/create' , component : CreateEditLocationComponent },
{ path: 'locations/create/:id', component : CreateEditLocationComponent },
{ path: '404' , component : PageNotFoundComponent},
{ path: '**' , redirectTo: '/404'}
];
@NgModule({
imports: [RouterModule.forRoot(routes)],
exports: [RouterModule]
})
export class AppRoutingModule { }
Это роутер:
<a [routerLink] = "['/locations']" routerLinkActive="active"> test link </a>
КогдаЯ нажимаю на ссылку, ничего не происходит.URL в браузере изменен, но компонент не загружен.Если я нажму F5, компонент будет загружен, и с этого момента ссылка на маршрутизаторы будет работать.
Я пробовал много решений для работы со стеком, например, написание ссылки в любом варианте, например
<a routerLink="/locations" ...
<a [routerLink]= ['/locations'] ...
<a [routerLink]= "['/locations']" ...
С атрибутом LinkAttive или без него.Помещение
<base href="/">
в index.html и т. Д. ...
По этой теме: TOPIC Я пытался включить Router в свой компонент Layout:
import { Component, OnInit } from '@angular/core';
import { ActivatedRoute } from '@angular/router';
@Component({
selector: 'app-layout',
templateUrl: './layout.component.html',
styleUrls: ['./layout.component.css']
})
export class LayoutComponent implements OnInit {
constructor(
private route : ActivatedRoute
) { }
[...]
но ничего не меняется.
Странно то, что после F5 все маршруты работают, даже маршрут к компоненту, который еще не загружен.
В этой теме ТЕМА 2 пользователь разрешил удаление класса css.Я пытался поместить свою ссылку в полностью очищенный компонент HTML, и он не работает (но все еще работает после обновления).
<p>
dashboard works!
<a routerLink = '/locations' routerLinkActive="active"> test link </a>
</p>
ОБНОВЛЕНИЕ: Это layout.component, где находится тег маршрута.Я не могу понять, как получить Sidenav, не имея внутри него выходного маршрута.
<mat-sidenav-container fullscreen>
<mat-sidenav #sidenav mode="over">
<div class="profile_container">
<span> User Name </span>
</div>
<mat-nav-list>
<mat-list-item><a [routerLink]="['/locations']" routerLinkActive="active"> Locations
</mat-nav-list>
</mat-sidenav>
<mat-sidenav-content>
<app-header (toggleSidenav)="sidenav.toggle()"></app-header>
<div style="padding: 20px 10px 10px 20px;">
<router-outlet></router-outlet>
</div>
</mat-sidenav-content>
</mat-sidenav-container>