首页 > 解决方案 > 如何使用可选路径前缀定义角度路径

问题描述

我们目前正在使用 ui-router 全局挂载一个路由 ( ) 并在具有相同路由定义/foo的路径前缀内。/projects/:projectid/foofoo

在 ui-router 中,这很容易通过定义一个可选的路径参数来压缩:

  {
    name: 'root',
    url: '/{projects}/{projectId}',
    component: BaseComponent,
    params: {
      projectPath: {type: 'path', value: null, squash: true},
      projects: {type: 'path', value: null, squash: true},
    }
  },
  {
    name: 'foo',
    parent: 'root',
    component: FooComponent,
    url: '/foo'
  }

此定义将同时匹配/projects/<id>/foo和匹配/foo相同的路由。现在想象在我们的项目中,有相当多的路线可能存在于全球或项目环境中。

有没有办法使用角度路由器来实现这一点,而无需复制所有要在全局和每个项目中定义一次的路由?

标签: angularangular-ui-routerangular-router

解决方案


推荐阅读