角路由-redirectTo无路径的子路由

时间:2018-06-23 19:10:49

标签: angular angular-routing

我尝试将“子路线”设置为默认路线,当我仅输入站点地址时就会加载该默认路线。

const routes: Routes = [
    {path: '', pathMatch: 'full', redirectTo: ''},
    {
        path: '', component: FrameDefaultComponent,
        children: [
            {path: '', component: SiteCalculatorComponent}
        ]
    },
];

但是这不起作用...当我给SiteCalculatorComponent像calc这样的任何路由并从1级重定向到'calc'时,它就会起作用。我知道...但是重点是我想“不带任何路径;;

这可能吗?如果是,怎么办?

2 个答案:

答案 0 :(得分:2)

我有一个这样的路由器:

const firstRoutes: Routes = [
  {
    path: '',
    children: [
      {
        path: 'parent-url',
        children: secondRoutes
      }
    ]
  }
];

第二个是这样的

export const secondRoutes: Routes = [
  {
    path: '',
    children: [
      {
        path: '',
        redirectTo: 'child-route',
        pathMatch: 'full'
      },
      {
        path: 'child-route',
        component: ChildComponent
      }
    ]
  }
];

可以使用/ child-route或/ parent-url / child-route来调用我的ChildComponent。 我想禁用同时使用这两个路由调用我的函数,因此设置为只能使用/ parent-url / child-route调用它。

我不知道如何检查是否存在/ parent-url以及是否不存在,如果没有/ parent-url,则无法禁用对ChildComponent的调用。整个网址中?

答案 1 :(得分:0)

解决方案:

{
    path: '', component: FrameDefaultComponent,
    children: [
        {path: '', component: SiteCalculatorComponent}
    ]
},