如何为带问号的网址创建routeProvider?

时间:2016-10-01 22:12:40

标签: angularjs

总体而言,我的网址遵循标准http://sitename/something#/rounds/2 "当"到routeProvider是这样的:

.when('/rounds/:param', {
   templateUrl:,
   label:,
})

好的,但现在我有一个带有问号的网址:http://sitename/something#/rounds/2?add_on=2

我如何制作routerProvider"何时"处理它? 这不起作用:

.when('/rounds/:param:param', {
    templateUrl:,
    label:,
})

如何使这种URL有效?

1 个答案:

答案 0 :(得分:0)

网址GET参数(例如 add_on = 2 )不会影响$ routeProvider网址匹配,因此两个链接(?add_on = 2 和不包含)将匹配:

.when('/rounds/:param', {
  templateUrl: .....
})

所有URL变量都将存储在$ routeParams服务中:    -

#/舍入/ 2

{
  "param": "2"
}

和 -

#/舍入/ 2?ADD_ON = 2

{
  "add_on": "2",
  "param": "2"
}

plunker:http://plnkr.co/edit/QY8QBykgdpCUIpxQC35m