我在角度应用中具有动态路由配置,如下所示。
{ path: ':locale/:id', component: HomePageCategory },
{ path: ':locale/:platform', component: PlatformPageCategory },
{ path: ':locale/contact', component: ContactPageCategory },
在上面的代码中,我基于动态值进行导航。如果第二个url作为数字表示它应该转到一个组件,而作为字符串表示它应该转到另一个组件。基于此,它应该路由。这是我的要求。这有可能实现吗?
是否可能基于条件路由?
是否还支持基于条件的路由?就像ASPNET Core。请检查以下图片。
答案 0 :(得分:1)
您可以通过canActivate完成此操作。在canActivate中,检查routeParam的类型,并将其相应地重定向到您希望的其他路由。
我在这里做了一个stackBlitz示例: https://stackblitz.com/edit/angular6-pux5el?file=app/my-guard.guard.ts
答案 1 :(得分:0)
我不知道如何在路径描述中实现这一点。您可以做的是重构路径,然后设置不同数量的参数。然后,当您必须导航到路线时,可以采取解决方法。
示例:
if (isNaN(parseInt(yourParam))){
// This is not a number, navigate to route 1
} else {
// This is a number, navigate to route 2
}