始终获取默认路由 - 角度 4



我有以下代码:

const appRoutes: Routes = [
  { path: '', redirectTo: '/login', pathMatch: 'full' },
  { path: 'home', component: HomeComponent, canActivate: [AuthGuard]    },
 // Lazy Loading (preloads) so I wont have to LOAD the new code chunk
{ path: 'highlights', loadChildren: './highlights/highlights.module#HighlightsModule', canActivate: [AuthGuard] },
{ path: 'news', loadChildren: './news/news.module#NewsModule', canActivate: [AuthGuard]  },
{
    path: 'not-found',
    component: ErrorPageComponent,
 data: { message: 'Page was not found' }
},
{ path: '**', redirectTo: '/not-found' } // must be last
];

我的登录"/登录"路由外包给带有路由模块(AuthRoutingModule(的模块(AuthModule(。

我在AuthRoutingModule中的路由常量是:

const authRoutes: Routes = [
   { path: 'login', component: LoginComponent}
];

仅当 appRoutes 中的此路径存在时,才会出现问题:

{ path: '**', redirectTo: '/not-found' }

否则它工作正常。

我不明白。我总是找不到,好像无法识别"/login"。

"/login">与我上面提到的外包模块一起导出。

怎么了?

如果这些是您在调用RouterModule.forRoot()时使用的路由定义,那么如果您尝试导航到 root/login,它将始终导航到 not-found。在这些路由中没有该路径的定义...

如果您有另一个模块,其中有该路径的定义,则需要将该模块加载到用于 RouterModule.forRoot(( 的路由中

我也有类似的问题。如果您的设置正确,那么尝试解决组件中的所有文件导入错误/小错误。

相关内容

  • 没有找到相关文章

最新更新