Angular 2路由器:路由某条路线后面的所有东西

时间:2017-04-13 18:07:42

标签: javascript angular typescript angular2-routing

我们正在创建一个新版本的应用,并且需要保持旧版路由的正常运行。旧版网址会在特定路线下进入我们的应用,我们称之为legacy

所以,如果一个路由是/legacy/route1,我将用一个解析器处理它,告诉我们应该在我们的应用程序中去哪里(旧的URL路由方案非常错综复杂,需要相当多的逻辑)。但是,如果它出现在/legacy/route1/subroute3/somethingelse下,我想用相同的解析器处理它。

如何在RouterModule中的一行或几行内捕获所有这些路线?我已尝试过以下所有内容:

{ path: 'legacy', component: Legacy, resolve: [LegacyRouteResolver] },
{ path: 'legacy/', component: Legacy, resolve: [LegacyRouteResolver] },
{ path: 'legacy/*', component: Legacy, resolve: [LegacyRouteResolver] },
{ path: 'legacy/**', component: Legacy, resolve: [LegacyRouteResolver] }

但是没有一个会给我任何带有多个斜线的路线,并且还有许多其他情况下它们会失败(octothorp似乎也将它们抛弃)

1 个答案:

答案 0 :(得分:2)

你可以在下面使用,

 { 
     path: 'legacy',
     children: [
        {path : '**' , component: Legacy}
     ]
  }

这将匹配legacy

之后的所有路线

希望这会有所帮助!!