У меня определена пара маршрутов, которые соответствуют некоторым компонентам, и затем у меня есть универсальный маршрут с заполнителем, подобным этому:
const routes: Routes = [
{ path: 'some', component: SomeComponent },
{ path: 'other', component: OtherComponent },
{ path: ':route', component: PageNotFoundComponent }
];
У меня тогда есть PageNotFoundComponent, подобный этому:
import { Component, OnInit } from '@angular/core';
import {ActivatedRoute} from '@angular/router';
@Component({
selector: 'app-page-not-found',
templateUrl: './page-not-found.component.html',
styleUrls: ['./page-not-found.component.css']
})
export class PageNotFoundComponent implements OnInit {
missingRoute: string;
route: any;
constructor( route: ActivatedRoute ) {
this.route = route;
}
ngOnInit() {
this.missingRoute = this.route.snapshot.paramMap.get('route');
}
}
и HTML-файл для PageNotFoundComponent просто так:
<p>The route {{missingRoute}} is not implemented.</p>
У меня есть компонент с некоторыми ссылками маршрутизатора и выходом маршрутизатора (здесь не показано). Если я нажимаю на ссылки маршрутизатора для некоторые и другие , это работает - в том смысле, что эти компоненты отображаются на выходе маршрутизатора. У меня также есть две ссылки на маршрутизаторы, которые ссылаются на « didnotexist » и « doesnotexist2 ». Если я обращаюсь к didnotexist, то это отображается правильно (PageNotFound сообщает мне об этом), но если я затем нажимаю на didnotexist2, я получаю ту же информацию, что и для hasnotexist: «Маршрут didnotexist не реализован». Я надеялся получить сообщение «Маршрут didnotexist2 не реализован».
Что я пропустил?