0

我有用于在角度应用程序中路由的动态配置,如下所示。


 { path: ':locale/:id', component: HomePageCategory    },
 { path: ':locale/:platform', component: PlatformPageCategory    },
 { path: ':locale/contact', component: ContactPageCategory    },

在上面的代码中,我基于动态值进行导航。如果第二个 url 以数字形式出现意味着它应该转到一个组件,而它作为字符串出现意味着它应该转到另一个组件。基于此,它应该路由。这是我的要求。这是否可以实现。

它可以基于路由条件吗?

是否支持其他基于条件的路由?就像 ASPNET 核心一样。请检查以下图片。

ASP.NET Core 路由约束

4

2 回答 2

1

您可以通过 canActivate 来完成。在 canActivate 检查 routeParam 的类型并将其相应地重定向到您希望的另一条路线。

我在这里做了一个 stackBlitz 示例: https ://stackblitz.com/edit/angular6-pux5el?file=app/my-guard.guard.ts

于 2019-06-13T11:57:02.783 回答
0

我不知道如何在路径描述中实现这一点。您可以做的事情是重构您的路径,然后使其具有不同数量的 params。然后,当您必须导航到您的路线时,您可以制定解决方法。

例子:

if (isNaN(parseInt(yourParam))){
   // This is not a number, navigate to route 1
} else {
   // This is a number, navigate to route 2
}
于 2019-06-13T11:59:30.207 回答