【问题标题】:Angular 2 Router: route everything behind a certain routeAngular 2 Router:将所有内容路由到某个路由后面
【发布时间】:2017-04-13 18:07:41
【问题描述】:

我们正在创建一个新版本的应用,并且需要保持旧路由正常工作。旧版 url 在特定路径下进入我们的应用程序,我们称之为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] }

但是它们都不会给我任何带有多个斜杠的路线,并且在许多其他情况下它们都会失败(八爪鱼似乎也将它们扔掉了)

【问题讨论】:

    标签: javascript angular typescript angular2-routing


    【解决方案1】:

    你可以在下面使用,

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

    这将匹配legacy之后的所有路由

    希望这会有所帮助!

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-04-26
      • 2018-02-14
      • 1970-01-01
      • 2018-03-24
      相关资源
      最近更新 更多