Дочерний компонент маршрутизатора не является обязательным - PullRequest
0 голосов
/ 16 февраля 2019

Настройка моего маршрутизатора:

{
    path: "",
    component: DynamicContentComponent
  },
  { 
    path: ":ctype/:termid",   
    component: DynamicContentComponent,
    children: [    
      {

        path: "description/:nodeId" ,component: DescriptionContentComponent
      }
    ]
  }

];

Моя ссылка соответствует маршрутизатору (http://localhost:4200/restaurants/3025/description/2266) адресная строка браузера, но компонент (т.е.) DescriptionContentComponent не загружается, при загрузке перенаправляетк DynamicContentComponent

Здесь

: ctype -> рестораны
: termid -> 3025
: nodeId -> 2266

1 Ответ

0 голосов
/ 17 февраля 2019

Обновите ваши маршруты до этого

{ 
    path: ":ctype/:termid",   
    component: DynamicContentComponent,
    children: [    
       {
         path: "description/:nodeId" ,component: DescriptionContentComponent
       }
     ]
},
{
    path: "",
    component: DynamicContentComponent
}

Порядок маршрутов в конфигурации имеет значение, и это предусмотрено проектом.Маршрутизатор использует стратегию выигрыша первого совпадения при сопоставлении маршрутов, поэтому более конкретные маршруты следует размещать над менее конкретными маршрутами.В приведенной выше конфигурации сначала отображаются маршруты со статическим путем, а затем - пустой путь, соответствующий маршруту по умолчанию.Маршрут с подстановочными знаками стоит последним, поскольку он соответствует каждому URL-адресу и должен выбираться только в том случае, если сначала не найдено ни одного другого маршрута.

Подробнее здесь: Угловая маршрутизация

...