我可以在UI-Router中使用与父状态和子状态相同的名称查询参数

时间:2014-11-13 06:27:35

标签: javascript angularjs pagination angular-ui-router

我想使用AngularJS实现分页功能。然后我尝试使用相同的状态转换并添加' 同名'来实现它。查询参数。

app.config ["$locationProvider", "$stateProvider", "$urlRouterProvider", ($locationProvider, $stateProvider, $urlRouterProvider) ->
  $locationProvider.html5Mode true

  $urlRouterProvider.otherwise '/'
  $stateProvider
    .state 'shops',
      url: "/shops?page"
      controller: "shopsController"
      templateUrl: "shops.html"
    .state 'shops.shop_detail',
      url : "/:shop_id"
      controller: "shopDetailController"
      templateUrl: "shop_detail.html"
    .state 'shops.shop_detail.menus',
      url: "/menus?page"
      controller: "menusController"
      templateUrl: "menus.html"
]

例如,如果您想查看商店列表的第2页,则在浏览器中输入的网址如下所示。

/shops?page=2

如果您想查看特定商店中菜单列表的第2页,则在浏览器中输入的URL如下所示。

/shops/:shop_id/menus?page=2

但是当我运行此代码时,发生了以下错误。

Error: error:modulerr 
Module Error
Failed to instantiate module app due to:
Error: Duplicate parameter name 'page' in pattern '/shops/:shop_id/menus?page?page'

我认为这种使用查询参数的分页实现很流行。但我不能使用UI-Router做到这一点。 请告诉我解决方案。

0 个答案:

没有答案