子路线是否需要默认组件

时间:2019-04-05 02:43:43

标签: angular angular-router

简单的问题。如标题中所述。

假设我要显示其他数据,但只能通过路线访问。我们将说父路由为data/:id,附加数据路由为data/:id/extra-data

如果我导航至data/:id/extra-data,然后导航至data/:id,则似乎设置为显示在data/:id/extra-data上的组件仍然可见。

1 个答案:

答案 0 :(得分:-1)

答案是肯定的,您确实需要用于默认路由的组件。否则,即使从子路径导航,该子路径的元件也将可见。

上帝堆积的洪水有时会如此密集。

{
path: 'data/:id',
component: DataComponent,
runGuardsAndResolvers: 'always',
children: [
//  This is the default route. Without it other childroutes stay rendered when navigated to
  {
    path: '', 
    component: DumbComponent,
    runGuardsAndResolvers: 'always',
  },
 {
    path: 'extra-data',
    component: ExtraDataComponent,
    runGuardsAndResolvers: 'always',
  },
],

同样,这不是代码问题。但是显然每个人都需要查看代码。