【发布时间】:2017-11-13 06:49:54
【问题描述】:
我已在 angular 中将通配符路由添加到我的应用程序中。 问题出在添加通配符之后。
我不确定是什么问题! 下面是路由数组:
const appRoutes: Routes = [
{ path: 'login', redirectTo: '/login', pathMatch: 'full' },
{ path: 'settings', redirectTo: '/settings', pathMatch: 'full' },
{ path: '**', component: PageNotFoundComponent }
];
登录和设置是模块,它们有自己的路由文件。 在添加通配符和默认路由之前,应用程序在启动时被重定向到登录屏幕。
但是现在每个 url 都被重定向到 PageNotFoundComponent 。
配置中路由的顺序很重要,这是由 设计。路由器在匹配时使用先匹配获胜策略 路线,所以更具体的路线应该放在不太具体的上面 路线。在上面的配置中,具有静态路径的路由是 首先列出,然后是一个空路径路由,它匹配 默认路由。通配符路由排在最后,因为它匹配每个 URL,只有在没有其他路由首先匹配时才应该选择。
请指导! 谢谢
【问题讨论】:
-
通配符不应该是数组中的最后一个路由吗?
-
你为什么要重定向到 SAME 路由?
标签: angular wildcard angular-routing