Ниже приведены мои представления: 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
было указано в конфигурации маршрута.