角动态路径参数作为解析参数

时间:2016-04-05 09:43:31

标签: angularjs parameters path resolve route-provider

我在routeProvider链中有以下链接。我想要做的是引用路径中的动态变量作为resolve函数的参数。这可能吗?或者,如果在上面引用参数,我真的必须使用$ route.current.params.code吗?如果您认为我应该使用$ route,我该如何传递它?我能在这里做到吗?

when('/subscribe-staff/:code', {
  templateUrl: '/build/modules/subscribe-staff.html',
  controller: 'SubscribeStaff',
  controllerAs: 'sub',
  resolve: {
    invitation: function (InvitesService) {
      return InvitesService.getStaffInvites(code)
    }
  }
}).

1 个答案:

答案 0 :(得分:0)

我试图解决这个问题的主要问题是传递$ route的地方,而且我认为我们不能使用相同的变量路径名是很奇怪的。希望更新版本的角度可以简化这一点。对于任何遇到相同问题的人,您只需将$ route作为param传递给您的resolve函数,而不是传递给文件顶部的实际$ routeProvider设置。事实上,如果你这样做,我很确定它会破裂。

resolve: {
  invitation: function (InvitesService, $route) {
    return InvitesService.getStaffInvites($route.current.params.code)
  }
}