Подтвердить что ты не робот

Использовать redirectTo, если вы используете параметр children, возможно ли это?

Как вы, вероятно, уже сейчас в последнем @angular/router 3.0.0-rc.1, вам не разрешен параметр user redirectTo, если вы также используете параметр children.

Но наверняка в некоторых случаях это то, что вам нужно, как в моем случае. Например, я хочу перенаправить на первый ребенок все запросы к родительскому маршрутизатору.

Здесь мой маршрутизатор:

{
    path: 'project/:id',
    component: ProjectComponent,
    children: [
      {
        path: 'properties',
        component: ProjectPropertiesComponent
      },
      {
        path: 'stats',
        component: ProjectStatsComponent
      }
    ]
  }

Я хочу, чтобы все, кто отправился в маршрут project/:id, перенаправлялись к первому ребенку (properties) в моем случае.

Возможно ли это как-то?

Если я попробую вот так:

{
    path: 'project/:id',
    component: ProjectComponent,
    redirectTo: 'properties',
    children: [
      {
        path: 'properties',
        component: ProjectPropertiesComponent,
      },
      {
        path: 'stats',
        component: ProjectStatsComponent
      }
    ]
  }

Я получаю эту ошибку, конечно:

ИСКЛЮЧЕНИЕ: Ошибка: неверная конфигурация маршрута 'project/: id': redirectTo и дети не могут использоваться вместе

4b9b3361

Ответ 1

Пустой дочерний маршрут должен выполнять следующее задание:

  {
    path: 'project/:id',
    component: ProjectComponent,
    children: [
      {
        path: '',
        redirectTo: 'properties',
      },
      {
        path: 'properties',
        component: ProjectPropertiesComponent,
      },
      {
        path: 'stats',
        component: ProjectStatsComponent
      }
    ]
  }