【问题标题】:Angular ui-router: Mix static with dynamic routesAngular ui-router:将静态路由与动态路由混合
【发布时间】:2014-12-12 20:55:54
【问题描述】:

我对其他动态路线有一个例外:

    .state('item', {
        abstract: true
    })

// This is the 'hardcoded' static route
    .state('item.static', {
        url: '/static'
    })

    .state('item.content', {
        url: '/:para'

    })

如您所见,第一个子状态有一个固定 url 路由。然后,如果 url 不完全是这个修复词,我希望路由发生在子状态 2。

当我第一次点击子状态 1 时它可以工作。但是当我刷新浏览器时,视图不再映射并且 ui-view 保持为空。如果我重新启动其中一条动态路线,它就会起作用。

我故意省略了视图和控制器设置以使其看起来更简单。

【问题讨论】:

  • 这没有发生。通常。一定有其他一些不寻常的设置。我建议创建 plunker 来重现该问题。你肯定会在这里得到帮助......

标签: angularjs routes angular-ui-router state


【解决方案1】:

您是否尝试过正则表达式模式来排除 para 路由的“静态”路由?从理论上讲,您应该能够排除“静态”路由,而 ui-router 将在该点选择动态路由。

Ui-Router Documentation

来自文档:

// will only match a contactId of one to eight number characters
url: "/contacts/{contactId:[0-9]{1,8}}"

【讨论】:

    最近更新 更多