По-долу са моите изгледи: 1. app
- стандартен 2. home
- Има списък с елементи вляво, при избор на който и да е, ще покаже част от съдържанието от дясната страна в изгледа на рутера (изгледът на договора ще бъде зареден). 3. contract-view
app.ts: конфигурация на маршрута:
configureRouter(config: RouterConfiguration, router: Router) {
config.title = 'Contracts Portal';
config.map([
{ route: ['', 'home'], name: 'home', moduleId: 'home', nav: true, title: 'Home' },
{ route: 'resources', name: 'resources', moduleId: 'resources', nav: true, title: 'Resources' },
{ route: 'tools', name: 'tools', moduleId: 'tools', nav: true, title: 'Tools' }
]);
this.router = router;
}
Конфигурация на рутера Home.ts:
configureRouter(config: RouterConfiguration, router: Router) {
config.title = "test";
config.map([
{ route: ['', 'contract-view/:id'], name: 'contract-view', moduleId: 'contract-view', nav: true, title: 'Test' }
]);
this.router = router;
}
при избор на елемент в списъка с начални страници, опитвам се да навигирам както е показано по-долу, за да заредя съдържание в изгледа на рутера в десния панел, в home.ts
:
this.router.navigateToRoute("contract-view", { id: 4090 });
Въпреки това извежда грешката: Маршрутът не е намерен: /contract-view/4090
В този момент това все още е начална страница и маршрут по подразбиране, следователно url адресът гласи: http://localhost:9000/#/
и така се проваля. Но ако ръчно променя URL адреса на http://localhost:9000/#/home
и след това избера елемент от списъка, навигацията към изглед на договор работи. Какво ми липсва тук?
Търся абсолютна навигация по пътя. Опитах да навигирам до home/contract-view
, но не успях с грешка: Маршрут с име „home/contract-view“ не може да бъде намерен. Проверете дали името: home/contract-view
е посочено в конфигурацията на маршрута.