"无法匹配任何路线"使用辅助插座时出错

时间:2017-09-26 20:15:07

标签: angular

我正在尝试使用http://127.0.0.1:8080/#/reset/finish?key=26983684729750581998网址访问组件。

路线配置提供Error: Cannot match any routes. URL Segment: 'reset/finish'

export const passwordResetFinishRoute: Route = {
    path: 'reset/finish',
    component: PasswordResetFinishComponent,
    outlet: 'loginOutlet'
};

以下是我的路由器插座配置:

<router-outlet></router-outlet>
<router-outlet name="loginOutlet></router-outlet>

我确信我正在导入路由配置。因为当我删除outlet: 'loginOutlet'部分时,该组件将显示在主路由器中。

在提供插座时,Angular无法找到路线配置的原因是什么?

1 个答案:

答案 0 :(得分:-1)

这些路线存在巨大差异。第一个是具有子路由的路由,第二个是基于命名组件的路由,没有子路由。

对于第一个,您要告知加载路线作为插座的孩子。因此,一旦路由完成,它将在路径内搜索<router-outlet></router-outlet>并在那里加载PasswordResetFinishComponent

由于没有提到名称且路由是'',它将作为子路由加载。所以它将直接加载

<router-outlet> <router-outlet></router-outlet> </router-outlet>

但对于第二个,因为它是一个命名的路由器插座loginOutlet。因此它会找到<router-outlet name='loginOutlet'></router-outlet>并将组件加载到其中。